老板一个项目,感觉上面加一个返回界面更加方便,不用每次都要按下右下角的返回键(本人小米2S).

首先 有一个主界面(MainActivity.java)里面一个按钮,点了这个按钮跳到另一个界面。

运行如下:

代码如下:

packagecom.example.topback;importandroid.os.Bundle;importandroid.app.Activity;importandroid.content.Intent;importandroid.view.Menu;importandroid.view.View;importandroid.widget.Button;publicclassMainActivityextendsActivity{privateButtonbutton_to_second=null;@OverrideprotectedvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);button_to_second=(Button)findViewById(R.id.btn_to_second);button_to_second.setOnClickListener(newView.OnClickListener(){@OverridepublicvoidonClick(Viewv){//TODOAuto-generatedmethodstubIntentintent=newIntent();intent.setClass(MainActivity.this,Second.class);startActivity(intent);}});}@OverridepublicbooleanonCreateOptionsMenu(Menumenu){//Inflatethemenu;thisaddsitemstotheactionbarifitispresent.getMenuInflater().inflate(R.menu.main,menu);returntrue;}}

主界面的布局很简单,就一个按钮。

接下来是第二个界面Second.java

界面运行如下:

packagecom.example.topback;importandroid.app.Activity;importandroid.content.Intent;importandroid.os.Bundle;importandroid.view.View;importandroid.widget.Button;publicclassSecondextendsActivity{privateButtonbutton_back=null;privateButtonbutton_more=null;@OverrideprotectedvoidonCreate(BundlesavedInstanceState){//TODOAuto-generatedmethodstubsuper.onCreate(savedInstanceState);setContentView(R.layout.activity_second);button_back=(Button)findViewById(R.id.btn_back);button_more=(Button)findViewById(R.id.btn_more);button_back.setOnClickListener(newView.OnClickListener(){@OverridepublicvoidonClick(Viewv){//TODOAuto-generatedmethodstubfinish();}});button_more.setOnClickListener(newView.OnClickListener(){@OverridepublicvoidonClick(Viewv){//TODOAuto-generatedmethodstubIntentintent=newIntent();intent.setClass(Second.this,More.class);startActivity(intent);}});}}

这个界面的布局也比较简单,就最上面一个相对布局,里面放返回按钮,布局代码如下

<RelativeLayoutxmlns: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"><RelativeLayoutandroid:id="@+id/top_relative"android:layout_width="fill_parent"android:background="@drawable/head_bg"android:layout_height="50.0dip"><Buttonandroid:id="@+id/btn_back"android:layout_width="wrap_content"android:background="@drawable/back"//这里很关键将在下面讲解android:layout_height="wrap_content"android:layout_centerVertical="true"android:layout_gravity="center_vertical"android:layout_marginLeft="5.0dip"android:textColor="@android:color/white"android:text="返回"/><TextViewandroid:id="@+id/titleText"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_centerInParent="true"android:textSize="18dp"android:text="标题文字"android:textColor="@android:color/white"android:singleLine="true"/><Buttonandroid:id="@+id/btn_more"android:layout_width="wrap_content"android:background="@drawable/btn_back"//这里同上面的注释android:layout_height="wrap_content"android:layout_centerVertical="true"android:layout_alignParentRight="true"android:layout_gravity="center_vertical"android:layout_marginRight="5.0dip"android:textColor="@android:color/white"android:text="更多"/></RelativeLayout></RelativeLayout>

上面布局代码很简单,但是要注意button标签里面android:background="@drawable/back"中的back是一个布局文件

第二个button里面的android:background="@drawable/btn_back"中的btn_back也是布局文件

再要注意的地方是属性是background

详细如下:

back.xml

<?xmlversion="1.0"encoding="utf-8"?><selectorxmlns:android="http://schemas.android.com/apk/res/android"><itemandroid:state_selected="false"android:state_pressed="false"android:drawable="@drawable/back_normal"/><itemandroid:state_selected="false"android:state_pressed="true"android:drawable="@drawable/back_pressed"/><itemandroid:state_selected="true"android:drawable="@drawable/back_pressed"/></selector>

btn_back.xml

<?xmlversion="1.0"encoding="utf-8"?><selectorxmlns:android="http://schemas.android.com/apk/res/android"><itemandroid:state_selected="false"android:state_pressed="false"android:drawable="@drawable/btn_normal"/><itemandroid:state_selected="false"android:state_pressed="true"android:drawable="@drawable/btn_pressed"/><itemandroid:state_selected="true"android:drawable="@drawable/btn_pressed"/></selector>

以上两个.xml文件就是今天主要的内容了。上面的意思就是:定义了这个按钮按下或者未被按下是的动作,对应的状态,分别显示按下时的图片和未被按下时的图盘。这样就可以达到按下时按钮的颜色不同的效果了。









更多相关文章

  1. 【Android基础】常用的布局和单位的简介
  2. android Studio与数据库SQLserver连接实现登录
  3. Android学习笔记16:Button控件图文混排效果的实现
  4. 安卓基础知识
  5. 布局demo二:shape的使用
  6. Android(安卓)自定义View实现任意布局的RadioGroup
  7. Mac OS启动 Android(安卓)Device Monitor卡住
  8. Android(安卓)Notification使用系统通知栏布局出现的图标问题
  9. Android最简洁的自动换行布局组件

随机推荐

  1. 【Android】App界面与顶部状态栏重叠遮盖
  2. Android最好看的圆形进度条ProgressBar
  3. Android(安卓)Bundle类
  4. ADT Bundle最后一次更新的版本下载地址
  5. Andriod开发之浏览器开发(WebView)
  6. 屏幕方向android:screenOrientation
  7. selector
  8. android 刚进入activity 时关闭输入法
  9. android使用SharedPreferences存储和读取
  10. Android(安卓)Http请求