Кнопку с вопросительным

недавно я начал работу на android.

я написал этот кусок кода

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

public class ArrangeMe extends Activity {
    private Button button1;
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);


        this.button1 = (Button)findViewById(R.id.buttonOne);
        this.button1.setOnClickListener(new OnClickListener() {
            //@Override
            public void onClick(View v) {
            	finish();
            }
        });
        setContentView(R.layout.main);
    }
}

и мой main.xml выглядит, как показано ниже

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
<TextView  
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" android:text="ArrangeMe"/>
<Button android:text="Button01" android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/buttonOne"></Button>
</LinearLayout>

но когда я пройду через эту строку

this.button1 = (Button)findViewById(R.id.buttonOne);

я наблюдаю button1 = null. но когда я типа R.id. затмение означает автоматического завершения buttonOne (что предполагает xml-схему, верно !)

где я заблуждаюсь ?

редактировать:

interstingly, я попробовал следующий код

еще кнопка не отображается. она остановилась, врезавшись, но кнопка не отображается !

   button1 = new Button(getContext());
    button1.setText("1");
    addView(button1, new LinearLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT));
    button1.setOnClickListener(new OnClickListener() {
        //@Override
        public void onClick(View v) {
        	finish();
        }
    });

это было давать ошибка

я изменил их.

   button1 = new Button(getBaseContext());
    button1.setText("1");
    addContentView(button1, new LinearLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT));
    button1.setOnClickListener(new OnClickListener() {
        //@Override
        public void onClick(View v) {
        	finish();
        }
    });

Найдено 3 ответа:

button question

http://stackoverflow.com/questions/1559575/button-question

Посмотреть решение →