0
package com.example.example;

import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.widget.Button;
import android.view.View;
import android.view.View.OnClickListener;

public class MainActivity extends Activity {
    Button btn;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        this.setContentView(R.layout.activity_main);
        this.btn = (Button)this.findViewById(R.id.button);
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        this.btn.setOnClickListener(new OnClickListener() {

            public void onClick(View v) {         
                Intent intent = new Intent(MainActivity.this, profile.class);
                startActivity(intent);
            }     
        });
    }
}

エラーは発生しませんが、プログラムも思い通りに実行されません。私はAndroidが初めてで、ボタンがクリックされた後に画面を変更したいので、2つのクラスを使用しているため、1つのクラスでプログラムが別のonclickを呼び出す必要があります。これどうやってするの ?私のコードは上記の通りです。

4

2 に答える 2

3

this.setContentView(R.layout.activity_main);2回宣言したので、最初に削除してください。次に宣言する

btn = (Button)this.findViewById(R.id.button);

setContentView(R.layout.activity_main);

マニフェスト ファイルでプロファイル アクティビティを宣言します。以下のコードを確認してください。

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

    setContentView(R.layout.activity_main);
     btn = (Button)this.findViewById(R.id.button);
    btn.setOnClickListener(new OnClickListener() {

        public void onClick(View v) {

               Intent intent = new Intent(MainActivity.this, profile.class);
           startActivity(intent);
        }     
    });
于 2012-09-05T09:07:02.603 に答える
0

1) oncreate メソッドは以下のようになります。

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

    setContentView(R.layout.activity_main);
     btn = (Button)this.findViewById(R.id.button);
    btn.setOnClickListener(new OnClickListener() {

        public void onClick(View v) {

               Intent intent = new Intent(MainActivity.this, profile.class);
           startActivity(intent);
        }     
    });

2)プロファイルアクティビティをマニフェストに追加します。

3) onClick メソッドにログを追加して、それが呼び出されているかどうかを知る必要があります。

ハッピーコーディング!!

于 2012-09-05T09:08:50.373 に答える