0

アクティビティ間の切り替えのすべての例を見てきましたが、常に同じ結果が得られます。アプリ爆弾。

レイアウトのコンテンツを設定するJavaクラスがあるかどうかを知る限り、他のレイアウトに切り替えるには、Javaファイルに「リンク」する必要があります。これにより、 setContentView(R.layout.なんでもいい);

私がこれをやろうとすると、私のアプリが爆発すると言います。私のコードは次のとおりです: -

FROM Java クラス:-

    @Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState); 

    requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);

    setContentView(R.layout.activity_main);

    Button next = (Button) findViewById(R.id.goesnews);
    next.setOnClickListener(new View.OnClickListener() {
        public void onClick(View view) {
            Intent myIntent = new Intent(view.getContext(), ac2.class);
            startActivityForResult(myIntent, 0);
        }

    });

    getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.window_title);   




}

TO Java ファイル (ac2)

     public class ac2 extends Activity {

     /** Called when the activity is first created. */
     public void onCreate(Bundle savedInstanceState) {
     super.onCreate(savedInstanceState);
     setContentView(R.layout.main2);

     }}

誰でもここで助けてもらえますか?

4

3 に答える 3

0

解決策はシンプルで、VSK からの応答 (Thanks) に基づいて、少し調整を加えたものでした。

必要な ImageButton :-

    <Button 
    android:id="@+id/previous" 
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" 
    android:text="click"
    android:onClick="move" />

Java が必要:-

    public void move(View v)
    {
    Intent myIntent = new Intent(yourclass.this, ac2.class);
    startActivityForResult(myIntent, 0);
    }

VSK - startActivityForResult の「0」属性に注意してください

皆さんありがとう

于 2013-04-18T09:53:10.907 に答える
0

この方法を試してください

このようにxmlファイルのボタンにonclick関数を追加します

<Button 
        android:id="@+id/previous" 
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" 
        android:text="click"
        android:onClick="move" />

そして、あなたのJavaファイルで、関数を次のように動かします

public void move(View v)
{
         Intent myIntent = new Intent(yourclass.this, ac2.class);
        startActivityForResult(myIntent,0);
 }
于 2013-04-17T13:27:26.663 に答える
0

この行からゼロを削除してみてください:

startActivityForResult(myIntent, 0);

このようにして、次のように変更します。

startActivity(myIntent);

次の行を変更します。

Intent myIntent = new Intent(view.getContext(), ac2.class);

これに:

Intent myIntent = new Intent(firstActivityName.this, ac2.class);

ここでは、アクティビティではなくボタンのコンテキストを取得しているためです。

于 2013-04-17T13:23:10.650 に答える