2 jonskeet JonSkeet 于 2013.01.08 16:17 提问

如何从主activity打开我自定义的类

我用下面的代码在主activity打开我自定义的类Speak2

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

在voice.xml布局中设置的按钮,当我点击按钮会调用activity Speak2。
没有实现这个功能。
还有相关的代码:

    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) {
    // TODO Auto-generated method stub
    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);
}
}

请大家帮忙找找问题所在。

1个回答

csh_34
csh_34   2013.01.09 10:12
已采纳

试下这个方法:

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

确保Activity Speak2要在AndroidMenifest.xml里面定义,否则会获得异常。
还有 AndroidMenifest.xml中的<application> tag 应该是下面这样的:

<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>
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!