我们要通过这些点击事件,要做一个小程序,要做到的效果:当我们电机“十八禁”这个按钮的时候,可以弹出一个图片(绿色部分)
先写好布局
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" //使用垂直布局 > <Button android:id="@+id/bt_click" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="十八禁" /> <ImageView android:id="@+id/iv_pic" android:layout_width="match_parent" android:layout_height="match_parent" android:src="@drawable/android" /> </LinearLayout>
预览如下图所示:
然后编写相关的程序,MainActivity.java,设置监控,触发时候把图片显示出来 public class MainActivity extends AppCompatActivity { private ImageView iv_pic; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //设置关联的布局 setContentView(R.layout.activity_main); //多态 Button bt_click=(Button)findViewById(R.id.bt_click); //如果xml里放了个按钮什么的,在activity中要获取该按钮就用 //findViewById(R.id.xml文件中对应的id) //实例化控件——找控件 iv_pic=(ImageView)findViewById(R.id.iv_pic); //对按钮注册一个监听器 //第一种点击事件方式—— 匿名内部类方式 bt_click.setOnClickListener(new View.OnClickListener() { //当点击按钮——并手指抬起时候,触发该方法 @Override public void onClick(View v) { //设置ImageView的图片资源,触发方法时候显示这个图片 iv_pic.setImageResource(R.drawable.b); } }); } 效果图:(点击按键之后)
在Button的控件中添加,android:onClick="showPic",showPic不是固定的,所起的名字就作为一个点击事件存在。之后再改MainActivity.java。写一个方法,参数要是View,这个方法作用是显示出图片
public class MainActivity extends AppCompatActivity { private ImageView iv_pic; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Button bt_click=(Button)findViewById(R.id.bt_click); iv_pic=(ImageView)findViewById(R.id.iv_pic); } public void showPic(View v){ iv_pic.setImageResource(R.drawable.b); } }本人刚入门安卓,有什么不对的地方,希望大神们指出!