2013-03-25 184 views
0

我的活動佈局中有一個按鈕,我的活動已擴展和實現爲MyActivity擴展FragmentActivity實現LoaderCallbacks。 on Click Listener的按鈕我打電話給另一個使用startActivity的活動,但它不會在其他活動甚至是日誌並嘗試catch沒有得到任何異常。 任何人都可以建議我可能需要檢查什麼才能擺脫此問題? 非常感謝提前。 。 。按鈕點擊監聽活動

@Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.categories); 
      Context context; 
      context = this; 
     imgViewLogin = (ImageView) findViewById(R.id.imageViewLogin); 
     imgViewLogin.setOnClickListener(new OnClickListener() {   
      @Override 
      public void onClick(View v) {    
       startActivity(new Intent(context, 
         NewActivity.class)); 
      } 
     }); 
    } 
+1

這裏是你的代碼? – agamov 2013-03-25 06:18:47

+0

你可以把你的代碼? – 2013-03-25 06:19:47

回答

1

嘗試這樣

startActivity(new Intent(MainActivity.this, NewActivity.class)); 

這裏MainActivity意味着,你把這個代碼的當前活動。的 代替

startActivity(new Intent(context, NewActivity.class)); 
+0

您好我確實複製了過去的代碼,我使用上下文作爲上下文context; context = this;上下文不作爲null,我調試代碼上下文有當前活動。 – aftab 2013-03-25 06:25:34

+0

好吧嘗試像這樣我在我的答案說,它會工作。 – 2013-03-25 06:26:40

+0

檢查我編輯的答案。並嘗試該代碼。 – 2013-03-25 06:37:38

0

使用getApplicationContext()或activity.this

getApplicationContext() -

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.categories); 
    imgViewLogin = (ImageView) findViewById(R.id.imageViewLogin); 
    imgViewLogin.setOnClickListener(new OnClickListener() {   
     @Override 
     public void onClick(View v) {    
      startActivity(new Intent(getApplicationContext(), 
        NewActivity.class)); 
     } 
    }); 
} 

acivity.this -

@Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.categories); 
     imgViewLogin = (ImageView) findViewById(R.id.imageViewLogin); 
     imgViewLogin.setOnClickListener(new OnClickListener() {   
      @Override 
      public void onClick(View v) {    
       startActivity(new Intent(activity.this, 
         NewActivity.class)); 
      } 
     }); 
    } 
+0

嗨,我沒有複製過去的代碼,並忘記兩行,我使用上下文作爲上下文上下文;上下文= this;上下文不作爲空,我調試代碼上下文有當前活動。 – aftab 2013-03-25 06:26:40

0

使用此

startActivity(new Intent(getBaseContext(), 
         NewActivity.class));