我们今天讲的主要就是
Android屏幕上的顶部与底部的工具栏,这样我们就可以在一个界面上实现很多种功能了,这样我们的用户用起来也比较好用,至于上面都有什么功能,那就看
大家怎么来实现了
这两个工具栏全是用布局来实现的。底部工具栏布局代码:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:
Android="http://schemas.
Android.com/apk/res/
Android"
Android:background="@drawable/bottom"
Android:layout_width="fill_parent"
Android:layout_height="wrap_content">
<TextView
Android:id="@+id/edit"
Android:text="测试"
Android:gravity="center_horizontal"
Android:drawableTop="@drawable/ic_dialog_alert"
Android:layout_alignParentLeft="true"
Android:layout_width="80dip"
Android:layout_height="wrap_content">
</TextView>
<TextView
Android:id="@+id/menu2"
Android:text="测试"
Android:gravity="center_horizontal"
Android:drawableTop="@drawable/ic_dialog_dialer"
Android:layout_toRightOf="@id/edit"
Android:layout_width="80dip"
Android:layout_height="wrap_content">
</TextView>
<TextView
Android:id="@+id/effect"
Android:text="测试"
Android:gravity="center_horizontal"
Android:drawableTop="@drawable/ic_dialog_email"
Android:layout_toRightOf="@id/menu2"
Android:layout_width="80dip"
Android:layout_height="wrap_content">
</TextView>
<TextView
Android:id="@+id/menu3"
Android:text="测试"
Android:gravity="center_horizontal"
Android:drawableTop="@drawable/ic_dialog_info"
Android:layout_toRightOf="@id/effect"
Android:layout_width="80dip"
Android:layout_height="wrap_content">
</TextView>
</RelativeLayout>
顶部工具栏布局代码:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:
Android="http://schemas.
Android.com/apk/res/
Android"
Android:background="@drawable/top"
Android:layout_width="fill_parent"
Android:layout_height="wrap_content">
<ImageView
Android:id="@+id/undo"
Androidrc="@drawable/ic_dialog_map"
Android:layout_alignParentLeft="true"
Android:layout_width="80dip"
Android:layout_height="wrap_content">
</ImageView>
<ImageView
Android:id="@+id/save"
Androidrc="@drawable/ic_dialog_menu_generic"
Android:layout_toRightOf="@id/undo"
Android:layout_width="80dip"
Android:layout_height="wrap_content">
</ImageView>
<ImageView
Android:id="@+id/share"
Androidrc="@drawable/ic_dialog_time"
Android:layout_toRightOf="@id/save"
Android:layout_width="80dip"
Android:layout_height="wrap_content">
</ImageView>
<ImageView
Android:id="@+id/redo"
Androidrc="@drawable/ic_dialog_usb"
Android:layout_toRightOf="@id/share"
Android:layout_width="80dip"
Android:layout_height="wrap_content">
</ImageView>
</RelativeLayout>
主窗口布局代码:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:
Android="http://schemas.
Android.com/apk/res/
Android"
Android:layout_width="fill_parent"
Android:layout_height="fill_parent">
<RelativeLayout xmlns:
Android="http://schemas.
Android.com/apk/res/
Android"
Android:id="@+id/layout_topmenu"
Android:layout_width="fill_parent"
Android:layout_height="wrap_content"
Android:layout_alignParentTop="true">
<include layout="@layout/top_menu" />
</RelativeLayout>
<TextView
Android:id="@+id/txt1"
Android:text="asdfasdfas"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_below="@id/layout_topmenu">
</TextView>
<RelativeLayout xmlns:
Android="http://schemas.
Android.com/apk/res/
Android"
Android:layout_width="fill_parent"
Android:layout_height="wrap_content"
Android:layout_alignParentBottom="true">
<include layout="@layout/bottom_menu" />
</RelativeLayout>
</RelativeLayout>
最后我们来看看主程序代码:
import
Android.app.Activity;
import
Android.os.Bundle;
import
Android.view.MotionEvent;
import
Android.view.View;
import
Android.view.Window;
import
Android.view.View.OnTouchListener;
import
Android.widget.ImageView;
import
Android.widget.TextView;
public class MainActivity extends Activity {
TextView txt1;
TextView edittv;
ImageView imgbtn;
boolean isFirst = true;
boolean istopFirst = true;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.main);
edittv = (TextView)findViewById(R.id.edit);
txt1 = (TextView)findViewById(R.id.txt1);
imgbtn = (ImageView)findViewById(R.id.undo);
edittv.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
if(isFirst) {
txt1.setText("编辑");
edittv.setBackgroundDrawable(getResources().getDrawable(R.drawable.item_background));
isFirst = false;
}else {
txt1.setText("退出编辑");
edittv.setBackgroundDrawable(getResources().getDrawable(R.drawable.touming));
isFirst = true;
}
return false;
}
});
imgbtn.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
if(istopFirst) {
txt1.setText("编辑");
istopFirst = false;
}else {
txt1.setText("退出编辑");
istopFirst = true;
}
return false;
}
});
}
}