2016-04-01 20 views
0

私はメインの(アクティビティ)を使用してボタンを作成しました。 onClick()メソッドを設定してボタンの動作を決定しました。ボタンをクリックして別のビューを表示したい。 android:onclick( "")コールは文字列パラメータを使用します。どうすれば他のビューを参照できますか?私はそのxmlアクティビティとコンテンツファイルを構築し、javaファイルが適切にまとめられており、自分のSDK上で動作することがテストされています。しかし、私はどのように新しいオブジェクトのビューを呼び出す必要がありますか? getApplication()を呼び出そうとしましたが、アプリケーションがクラッシュします。 ご協力いただきまして誠にありがとうございます。ここでAndroidでのアプリビューの切り替え

は、私が試したものです:

public void onClick(View v) { 
    // TODO Auto-generated method stub 
    Toast.makeText(getApplicationContext(), "I'm clicked!", Toast.LENGTH_SHORT).show(); 
    AppActivity app = new AppActivity(); 
    getApplicationContext().stopService(new Intent()); 
    app.getApplicationContext().startActivity(new Intent()); 
} 
+0

関連するコードを投稿する必要があります。 – wvdz

+0

@wvdz、私はどのようにonClickメソッドを設定するのかを含めるように投稿を編集しました。 –

答えて

1

をこれは:

ビュー、使用:あなたのonCreate

setContentView(R.layout.myXML); 

を。

あなたは、活動の間でデータを渡すputExtragetExtraを使用する場合:

Intent i=new Intent(context,SendMessage.class); 
i.putExtra("Hi", user.getUserAccountId()+""); 
context.startActivity(i); 

および取得するために:

Intent i= getIntent(); 
i.getExtra("Hi"); 

はこれが助けたなら、私に教えてください。

+0

かなりうまく動いています。あなたたちはあまりにも熟練している、私は私の帽子をダフ! –

+0

@ aburimegregoryねえ、うまくいけば、同様のボタンの下のチェックマークを押してください。そうすれば、あなたは私の答えを受け入れることができます。私は助けてうれしい! –

1

あなたはどこかにあなたの現在の活動contextを保存し、新しいアクティビティを呼び出すためにそれを使用する必要があります:あなたは活動の使用を変更したい場合は

private Context ctx; 
public Class CurrentActivity extends Activity{ 
    // let's save it in your onCreate method 
    onCreate(Bundle savedBundleState){ 
     ctx = this; 
    } 

    // now on your onClick method 
    public void onClick(View v) { 
     // TODO Auto-generated method stub 
     Toast.makeText(ctx, "I'm clicked!", Toast.LENGTH_SHORT).show(); 
     Intent intent = new Intent(ctx, AppActivity.class); 
     ctx.startActivity(intent); 
    } 

} 
+0

ありがとうございます、@Refaat。私はこれを正確に行い、それは激しく墜落した。私はcontentViewsとして実装しようとし、私が得るものを参照してください。 –

+0

がクラッシュした場合は、スタックトレースを質問に追加すると、簡単に手助けすることができます –

+1

ありがとう、Refaat。私は感謝しています。 –

関連する問題