2013-01-10 19 views
5

Ev değiştirme uygulaması üzerinde çalışıyorum. Bu kod adaptörü MyPagerAdapter içindedirAndroid, startClickListener ile etkinlik oluşturmaya başladı mı?

The method startActivity(Intent) is undefined for the type new View.OnClickListener(){}

: Ben Java ile bir düğme ama deniyorum arada bir OnClickListener eklemeye çalışıyorum hata üretir. Örneğin com.android.contacts.ContactApplication için olduğu gibi, başka bir uygulama açan bir düğmeye

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

nasıl ekleyebilir bir OnClickListener:

Bu benim çalışıyorum nedir?


DÜZENLEME: Bu tam kod şu anda çalışıyorum ne olduğunu: Tam olarak bu kod içinde ne

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); 
      } 
     }); 
+0

? Bir aktivite? –

+0

PagerAdapter üzerindedir. – lisovaccaro

+0

Herzaman, 'v.getContext(). StartActivity (intent); 'uygulamasını başlatmak ve Grid'in amacını düzgün bir şekilde yapmak için yanıtını kullanın. (Gerçekten bir amaca hizmet etmediğinden cevabı silindi). –

cevap

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); 
    } 
+1

yaptıklarını nasıl çalıştı? Bu nasıl yardımcı olabilir? Onun sorusunu oku. – dymmeh

+0

@dymmeh Kişiler uygulamasını başlatmak için uygun yol budur. –

+0

@ A - C - Amaç söz konusu değildi. Onun cevabı startActivity'nin şu anki kapsamda erişilemediğini açıkça belirten soruya rağmen startActivity'i çağırmayı içeriyordu. Onun düzenlemeleri her şeye rağmen – dymmeh

1
(findViewById(R.id.button)).setOnClickListener(new OnClickListener() { 
    @Override 
    public void onClick(View v) { 
     startActivity(new Intent(v.getContext(), ACTIVITY.class)); 
    } 
}); 
İlgili konular