灯火互联
管理员
管理员
  • 注册日期2011-07-27
  • 发帖数41778
  • QQ
  • 火币41290枚
  • 粉丝1086
  • 关注100
  • 终身成就奖
  • 最爱沙发
  • 忠实会员
  • 灌水天才奖
  • 贴图大师奖
  • 原创先锋奖
  • 特殊贡献奖
  • 宣传大使奖
  • 优秀斑竹奖
  • 社区明星
阅读:2566回复:0

简单实现顶部和底部工具栏

楼主#
更多 发布于:2012-09-06 13:57

我们今天讲的主要就是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;
            }
        });
    }
  
}


喜欢0 评分0
游客

返回顶部