android *** Layout 05 button
2016-02-01 11:39
417 查看
写了一下button,大概用法 http://android-doc.com/guide/topics/ui/controls/button.html 里就讲的很清楚了,主要是在button的setOnClickListener里面有一些特别的
给activity implements一个OnClickListener接口,这个接口如下:
MainActivity.java
activity_main.xml
给activity implements一个OnClickListener接口,这个接口如下:
public interface OnClickListener { /** * Called when a view has been clicked. * * @param v The view that was clicked. */ void onClick(View v); }
MainActivity.java
package com.example.tree; import android.support.v7.app.ActionBarActivity; import android.util.Log; import android.content.Context; import android.content.Intent; import android.os.Bundle; import android.view.Menu; import android.view.MenuItem; import android.view.View; import android.view.View.OnClickListener; import android.view.View.OnLongClickListener; import android.view.ViewGroup; import android.widget.AdapterView; import android.widget.AdapterView.OnItemClickListener; import android.widget.BaseAdapter; import android.widget.Button; import android.widget.EditText; import android.widget.GridView; import android.widget.ImageButton; import android.widget.ImageView; import android.widget.Toast; public class MainActivity extends ActionBarActivity implements OnClickListener{ private Button button1; private Button button2; private Button button3; private ImageButton button4; private Button button5; private final String TAG="MainActivity"; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Log.i(TAG, "-onCreate-->>"); setContentView(R.layout.activity_main); button1=(Button)this.findViewById(R.id.button1); button2=(Button)this.findViewById(R.id.button2); button3=(Button)this.findViewById(R.id.button3); button4=(ImageButton)this.findViewById(R.id.imageButton1);//imagebutton button5=(Button)this.findViewById(R.id.button4); button1.setOnClickListener(this); button2.setOnClickListener(this); button3.setOnClickListener(this); button4.setOnClickListener(this); } public void sendMessage(View v){//也可以用这种方法对button的按进行操作,其做法是在xml文件中的button下添加android:onClick="sendMess //age",然后再重写该方法 Toast.makeText(MainActivity.this, "button4", 1).show();; } public void onClick(View v){//重写OnClickListener接口中的onClick方法 switch(v.getId()){ case R.id.button1:Toast.makeText(MainActivity.this, "button1", 1).show(); case R.id.button2:Toast.makeText(MainActivity.this, "button2", 1).show(); case R.id.button3:Toast.makeText(MainActivity.this, "button3", 1).show(); case R.id.imageButton1:Toast.makeText(MainActivity.this, "imagebutton", 1).show(); } } protected void onStart(){ super.onStart(); Log.i(TAG, "-onStart-->>"); } protected void onRestart(){ super.onRestart(); Log.i(TAG, "-onRestart-->>"); } protected void onResume(){ super.onResume(); Log.i(TAG, "-onResume-->>"); } protected void onPause(){ super.onPause(); Log.i(TAG, "-onPause-->>"); } protected void onStop(){ super.onStop(); Log.i(TAG, "-onStop-->>"); } protected void onDestroy(){ super.onDestroy(); Log.i(TAG, "-onDestroy-->>"); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); return true; } @Override public boolean onOptionsItemSelected(MenuItem item) { // Handle action bar item clicks here. The action bar will // automatically handle clicks on the Home/Up button, so long // as you specify a parent activity in AndroidManifest.xml. int id = item.getItemId(); if (id == R.id.action_settings) { return true; } return super.onOptionsItemSelected(item); } }
activity_main.xml
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:id="@+id/relative" tools:context="${relativePackage}.${activityClass}"> <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_alignParentTop="true" android:layout_marginLeft="50dp" android:layout_marginTop="48dp" android:text="Button1" /> <Button android:id="@+id/button2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignRight="@+id/button1" android:layout_below="@+id/button1" android:layout_marginTop="20dp" android:text="Button2" /> <Button android:id="@+id/button3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignLeft="@+id/button2" android:layout_below="@+id/button2" android:layout_marginTop="22dp" android:text="Button3" /> <ImageButton android:id="@+id/imageButton1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignLeft="@+id/button3" android:layout_below="@+id/button3" android:layout_marginTop="30dp" android:src="@drawable/s1" /> <Button android:id="@+id/button4" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignBottom="@+id/button1" android:layout_marginLeft="22dp" android:layout_toRightOf="@+id/imageButton1" android:text="Button4" android:onClick="sendMessage" /> </RelativeLayout>
相关文章推荐
- android studio打开项目出现找不到sdk错误
- 如何用adb查看android终端分辨率?
- Android开发之Dialog使用
- AndroidTV开发教程(1)
- Android拷贝图片到指定文件路径
- Android FloatMath.ceil过时的解决办法
- 关于androidpn消息当服务器重启后,客户端在线的session全部掉线解决方案
- java.lang.ClassCastException: android.app.Application cannot be cast to错误
- 大叔也说Xamarin~Android篇~调用远程API接口,发POST请求
- 关于androidpn消息推送客户端锁屏状态,无法发送心跳包解决方案
- android Activity实现从底部弹出或滑出选择菜单或窗口
- android在代码中设置margin
- android 环境变量配置
- android开发字符串工具类(一)
- Android中ImageView用法实例分析
- Android实现位图剪切
- Android Studio The APK file does not exist on disk
- Android 内存泄漏总结----Android应用优化---Android应用性能优化实践
- Android单例模式
- 更新ADT到Android L的方法