当前位置:   article > 正文

在MainActivity中给另一个布局中的按钮添加onClick方法_activitymainbinding onclick

activitymainbinding onclick

我是一个新手小白,在做老师的课程设计时遇到了无法给另一个布局的按钮添加点击事件的问题,花费多时寻找终于找到了一个可以用的办法,分享一下希望可以帮助和我一样问题的人。

由于在MainActivity中我引用了R.layout.activity_main布局,我只有在给该布局下的控件绑定事件才会执行。但我需要给我的另一个布局中的按钮添加一个onClick事件,在网上找了很久一直没什么头绪,今天看了下点击事件的几种实现方法后,参考百度的答案找到一个解决办法。


一开始导入的布局

  1. protected void onCreate(Bundle savedInstanceState) {
  2. super.onCreate(savedInstanceState);
  3. setContentView(R.layout.activity_main);



错误做法 emmm可能我写错了点击后没有反应 如果有大神拜托告诉下我原因教下我

  1. LayoutInflater layoutInflater=LayoutInflater.from(this);
  2. View view=layoutInflater.inflate(R.layout.fragment_book_detail,null);
  3. Button button=(Button)view.findViewById(R.id.btn);
  4. button.setOnClickListener(new View.OnClickListener() {
  5. @Override
  6. public void onClick(View view) {
  7. Toast.makeText(MainActivity.this,"Ok",Toast.LENGTH_SHORT).show();
  8. }
  9. });
  1. public void Test(View view)
  2. {
  3. switch (view.getId())
  4. {
  5. case R.id.btn:
  6. Toast.makeText(MainActivity.this,"Ok",Toast.LENGTH_SHORT).show();
  7. break;
  8. }
  9. }

我的解决方法

  1. <Button
  2. android:id="@+id/btn"
  3. android:layout_width="0dp"
  4. android:layout_weight="1"
  5. android:background="@drawable/bt_shape"
  6. android:layout_marginLeft="9dp"
  7. android:layout_marginRight="9dp"
  8. android:onClick="Test"
  9. android:text="悬浮框"
  10. style="?android:attr/borderlessButtonStyle"
  11. />

在xml文件中为控件绑定onClick事件,然后在MainActivity中定义方法就可以实现了

  1. public void Test(View view)
  2. {
  3. switch (view.getId())
  4. {
  5. case R.id.btn:
  6. Toast.makeText(MainActivity.this,"Ok",Toast.LENGTH_SHORT).show();
  7. break;
  8. }
  9. }


声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/242553
推荐阅读
相关标签
  

闽ICP备14008679号