2012-02-21 34 views
0

以下是代碼。如何開始Android中的java類的活動

public class MyActivity extends Activity { 

    @Override 
    public void onCreate(Bundle bundle) { 
    super.onCreate(bundle); 

    MyClass myClass = new MyClass(this); 
    Cursor cursor = myClass.getCursor(); 
    startManagingCursor(cursor); 
    } 
} 

public class MyClass Extends ImageButton { 

    private Context context; 

    public MyClass(Context context) { 
    this.context = context; 
    } 

    public Cursor getOncreate() { 
    Intent intent = new Intent(); 
     intent.setClassName(MyClass.this,MyActivity.class); 
     context.startActivity(intent);  
    } 
} 

我想從MyClass啓動MyActivity。我得到NullPointer異常在

ctx.startActvity(intent); 

你能否建議我如何使其正確。

+0

凡'ctx'定義的?它不應該是'context.startActivity(intent)'而是? – papaiatis 2012-02-21 07:32:09

+0

誰是ctx?它沒有顯示你所發佈的代碼中的其他地方 – 2012-02-21 07:32:27

+0

我改變了,但沒有工作。你可以請教我。 – pmms 2012-02-21 09:28:28

回答

0

嘗試調用

startActivity(intent); 

代替

ctx.startActivity(intent); 
+0

謝謝。我也嘗試過。它說創建startActivity。它沒有工作。請給我任何選擇。 – pmms 2012-02-21 09:24:47

+0

如果你還沒有這樣做:import android.app.Activity; import android.content.Intent;這將解決您的「創建startActivity」問題 – 2012-02-21 09:33:22

+0

我已經保存導入android.app.Activity;導入android.content.Intent。它不是固定的。方法startActivity(Intent)對於MyClass類型是未定義的。這些是不同的活動。兩者都有不同的包裝,但在相同的應用程序中。 – pmms 2012-02-21 10:14:47

0

讓方法的參數之一是類型語境

pubic void methodStartActivity(Context context){ 
    Intent intent = new Intent(context, MyActivity.class); 
    context.startActivity(intent); 
}