2012-02-21 9 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を開始したいと考えています。私はあなたがどのようにそれが正しい作るために私を提案してもらえ

ctx.startActvity(intent); 

で発生する、NullPointer例外を取得しています。

+0

であることメソッドのパラメータの一つをしてみましょう呼び出しますか?代わりに 'context.startActivity(intent)'にするべきではありませんか? – papaiatis

+0

誰がctxですか? –

+0

私は変更しましたが、それ以外のコードは表示されません。しかし、動作しませんでした。あなたはアドバイスをお願いしますか? – pmms

答えて

0

試し代わりに

ctx.startActivity(intent); 
+0

ありがとうございます。私もそれを試みました。これは、startActivityを作成することを意味します。それはうまくいかなかった。何か別のものを教えてください。 – pmms

+0

まだ実行していない場合は:import android.app.Activity; import android.content.Intent;あなたの "create startActivity"問題を修正します –

+0

私はimport android.app.Activity; import android.content.Intentをインポートしています。これは固定されていませんでした。メソッドstartActivity(Intent)は、MyClass型に対して未定義です。これらは異なる活動です。どちらもパッケージは異なりますが、同じアプリケーションにあります。 – pmms

0

startActivity(intent); 

は `ctx`が定義されているタイプのコンテキスト

pubic void methodStartActivity(Context context){ 
    Intent intent = new Intent(context, MyActivity.class); 
    context.startActivity(intent); 
} 
関連する問題