2014-02-07 4 views
-2

Я работаю в андроида развития, я пытаюсь вызвать другую деятельность (деятельность 2) при нажатии кнопкиВызов другой деятельности в андроида

Вот код кнопки, которая должна быть нажата, чтобы вызвать вторую деятельность

<Button 
     android:id="@+id/button1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignTop="@+id/editText1" 
     android:layout_marginLeft="41dp" 
     android:layout_toRightOf="@+id/editText1" 
     android:text="Button1" 
     android:onClick="button1_func" /> 

код активности Calss для этой кнопки

public void button1_func() 
    { 
     Intent i=new Intent ("second_activity"); 
     startActivity(i); 
    } 

объявление здесь manifest.xml

<activity 
      android:name="com.example.application1.MainActivity" 
      android:label="@string/app_name" > 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 

       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 

     <activity 
      android:name="com.example.application1.Secondactivity" 
      android:label="@string/app_name" > 
      <intent-filter> 
       <action android:name="android.intent.action.second_activity" /> 

       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 

но мое приложение падает, когда я нажимаю кнопку, в чем проблема?

+0

вывесить StackTrace наряду с вопросом – Raghunandan

ответ

1

Вы

android:onClick="button1_func" /> 

Так что вам нужно

public void button1_func(View v) // change method signature 
{ 
    // do something 
    Intent i=new Intent (this,Secondactivity.class); 
    startActivity(i); 
}  

и удалите ниже SecondActivity манифеста

<intent-filter> 
      <action android:name="android.intent.action.second_activity" /> 

      <category android:name="android.intent.category.LAUNCHER" /> 
    </intent-filter> 

Читайте о Явные и неявные намерения @

http://developer.android.com/guide/components/intents-filters.html

1

Вы должны использовать

Intent i=new Intent (MainActivity.this,SecondActivity.class); 

вместо

Intent i=new Intent ("second_activity"); 
2

Вот он

Intent intent = new Intent(Activity1.this,Activity2.class); 
startActivity(intent); 
Смежные вопросы