2011-12-31 2 views
0

Я пытаюсь открыть свой класс Speak2 от моей основной деятельности с этим фрагментом:Как мне открыть свой класс из основного вида деятельности?

Intent i = new Intent("R.voice.Speak2"); 
startActivity(i); 

Это полный код из первого действия:

public class recon extends Activity implements OnClickListener { 

    ListView lv; 
    static final int check = 2000; 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.voice); 
     lv = (ListView) findViewById(R.id.lvVoiceReturn); 
     Button b = (Button) findViewById(R.id.bVoice); 
     b.setOnClickListener(this); 
    } 

    public void onClick(View v) { 
     Intent i = new Intent(recon.this, Speak2.class); 
     startActivity(i); 
    } 

    @Override 
    protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
     // TODO Auto-generated method stub 
     super.onActivityResult(requestCode, resultCode, data); 
    } 

} 

Моя программа проста. Кнопка появляется из макета voice.xml и при нажатии запускается классная активность Speak2. Почему вторая активность никогда не отображается?

+0

Java конвенция начинать имена классов с большой буквы. Ваш класс «recon» должен быть переименован в «Recon» для соответствия. Чтобы сделать еще один шаг, переименование его в «ReconActivity» сделает его особенно ясным, что такое класс. – tar

ответ

4

Попробуйте этот способ и убедитесь, что ваш Activity Speak2 также определен в вашем AndroidManifest.xml, иначе вы получите исключение.

// MainActivity is your main activity 
Intent i = new Intent(MainActivity.this, Speak2.class); 
startActivity(i); 

Ваш <application> тег AndroidManifest.xml должен выглядеть следующим образом:

<application android:icon="@drawable/ic_launcher" android:label="@string/app_name" > 
    <activity android:label="@string/app_name" android:name="recon" > 
     <intent-filter > 
      <action android:name="android.intent.action.MAIN" /> 
      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 
    <activity android:name="Speak2" /> 
</application> 
+0

для файла манифеста, как? user1121322

+0

или ? – user1121322

+0

как этот '' inside' ' –

Смежные вопросы