2014-01-11 2 views
-1

Я создал кнопку, и я хочу, чтобы она переходила на другую страницу при нажатии. Я думаю, что я все сделал правильно, но когда я запускал проект в эмуляторе, кнопка ничего не делала, и это дало мне ошибку, что проект перестает работать, и приложение перестает работать на эмуляторе. И идеи?Button не переходит на новую страницу?

Вот XML для кнопки

<Button 
    android:id="@+id/button1" 
    android:layout_width="300dp" 
    android:layout_height="wrap_content" 
    android:layout_gravity="center" 
    android:textStyle="bold" 
    android:hint="@string/Play_Button" /> 

Вот это ява для кнопки

package com.dakota.amnesiadino; 

import android.app.Activity; 
import android.content.Intent; 
import android.os.Bundle; 
import android.view.View; 
import android.widget.Button; 


public class MainActivity extends Activity { 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    Button play_button = (Button) findViewById(R.id.button1); 
    play_button.setOnClickListener(new View.OnClickListener() { 

     @Override 
     public void onClick(View v) { 
      // TODO Auto-generated method stub 

      startActivity(new Intent("com.dakota.amnesiadino.play_button")); 

     } 
    }); 
} 

} 

и вот манифест кнопки

   <activity 
     android:name="com.dakota.amnesiadino.levels_home" 
     android:label="@string/app_name" > 
     <intent-filter> 
      <action android:name="android.intent.action.play_button" /> 
      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 

ответ

0

Прежде всего , быть более конкретным, когда вы говорите «не переходите на следующую страницу» Эта страница является экраном? Является ли действие определяемым XML-файлом? Является веб-адресом? Это не очень четко напечатал ваш вопрос.

Как я понимаю, , вероятно, вы должны написать что-то вроде этого внутри тела OnClick ..

Intent intent = new Intent(getApplicationContext(),levels_home.class); 
startActivity(intent); 

Это решение может работать, если у вас есть файл XML и соответствующий .java файл для новой деятельности ,

0

за лучший способ сделать это, как это:

Intent intent = new Intent(getApplicationContext(),levels_home.class); 
startActivity(intent); 

и установка манифеста:

<activity 
    android:name="com.dakota.amnesiadino.levels_home" 
    android:label="@string/app_name" > 

в своем манифесте проблеме с LAUNCHER вероятно скопировать и вставить ошибки должно быть DEFAULT :

<intent-filter> 
    <action android:name="android.intent.action.play_button" /> 
    <category android:name="android.intent.category.DEFAULT" /> 
</intent-filter> 
Смежные вопросы