读书人

新手请问简单有关问题 onclick没反应.

发布时间: 2012-03-22 17:43:57 作者: rapoo

新手请教简单问题 onclick没反应..
前提:uses-sdk android:minSdkVersion="15"
android4.3
AndroidManifest.xml和strings.xml就是那些常规 没另外加东西
废话不说 直接上码

main.xml文件:

XML code
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:layout_width="fill_parent"    android:layout_height="fill_parent"    android:orientation="vertical" > <Button        android:id="@+id/testbut"        android:layout_width="wrap_content"         android:layout_height="wrap_content"         android:text="测试"        /></LinearLayout>



HelloWordActivity.java
Java code
public class HelloWordActivity extends Activity {      @Override    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.main);            }    }

main.java
Java code
public class Main extends Activity implements OnClickListener {    private Button testbut;    private String logResult;       @Override    protected void onCreate(Bundle savedInstanceState) {        // TODO Auto-generated method stub        super.onCreate(savedInstanceState);        setContentView(R.layout.main);        init();    }    @Override    public void onClick(View arg0) {                // TODO Auto-generated method stub        switch (arg0.getId()) {        case R.id.testbut:            onButTest();            break;         default:            break;        }    }        public void init() {        testbut = (Button) findViewById(R.id.testbut); //从资源文件中获取按钮对象的引用         testbut.setOnClickListener(this);//注册点击事件监听者         }    public void onButTest() {        Toast.makeText(this, "Deleted Successfully!", Toast.LENGTH_LONG).show();        setTitle("Start the App");        Log.i("app", "已经启动");             }      }


[解决办法]
首先我也是新手,所以说的只是建议。以下:
你用了onClick();但是你没有监听啊!
应该添加一个:
private Button button_1;
button_1 = (Button)findViewById(R.id.testbut);
button_1.setOnClickListener(Button.onClickListener()
{
public void onClick()//应该在这里写onClick()吧。
});
因为我也是新手。所以建议不一定对,你可以回去试试。
[解决办法]
试下了,程序没什么问题啊!onclick可以执行,已经继承了OnClickListener接口。
可以用楼上的方法再试下。
[解决办法]
你的代码没有问题。。。
lz你的HelloWordActivity.java和main.java中都用了main这个布局,请问你的main.java
中采用onclick的事件监听,你在AndroidManifest.xml中注册main.java这个activity了吗?
[解决办法]
哦。可是还有一点。那在一个工程中创建了两个activity,但是两个activity却又互相没有联系。但是事实上你这两个activity引用的却是同一个布局文件:main.xml。如果你运行程序的话,那么楼主你怎么确定你这个button是哪个antivity布局出来的呢?如果是HelloWordActivity.java布局出来的话,当然没有反应,因为你什么功能都没有赋予给这个button。

读书人网 >Android

热点推荐