5

私は家の交換アプリケーションに取り組んでいます。OnClickListenerJavaでボタンにを追加しようとしていますが、試行している方法でエラーが発生します。

メソッドstartActivity(Intent)は、タイプnew View.OnClickListener(){}に対して未定義です。

このコードはアダプタ内にありMyPagerAdapterます。

これは私が試していることです:

    buttonItem.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Intent intent = new Intent("com.android.contacts.ContactsApplication");
            startActivity(intent);
        }
    });

OnClickListenerたとえば、別のアプリケーションを開くボタンにを追加するにはどうすればよいcom.android.contacts.ContactApplicationですか?


編集:これは私が今試していることを含む完全なコードです:

public class MyPagerAdapter extends PagerAdapter {

    @Override
    public Object instantiateItem(View container, int position) {
        Context context = container.getContext();
        LinearLayout layout = new LinearLayout(context);
        SharedPreferences sharedPrefs = PreferenceManager.getDefaultSharedPreferences(context);
        TextView textItem = new TextView(context);
        Button buttonItem = new Button(context);
        buttonItem.setText("Aceptar");

        // This is what I'm trying, (crashes on click)
        buttonItem.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent("com.android.contacts.ContactsApplication");
               v.getContext().startActivity(intent); 
            }
        });
4

2 に答える 2

9
 buttonItem.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        Intent i = new Intent();
        i.setComponent(new ComponentName("com.android.contacts", "com.android.contacts.DialtactsContactsEntryActivity"));
        i.setAction("android.intent.action.MAIN");
        i.addCategory("android.intent.category.LAUNCHER");
        i.addCategory("android.intent.category.DEFAULT");
        v.getContext().startActivity(i);
    }
于 2013-01-10T20:43:24.477 に答える
1
(findViewById(R.id.button)).setOnClickListener(new OnClickListener() {
    @Override
    public void onClick(View v) {
        startActivity(new Intent(v.getContext(), ACTIVITY.class));
    }
});
于 2016-01-23T17:44:26.397 に答える