【Android】一个简单又实用的toolbar
16lz
2021-01-26
在很多软件中都可以看到风格统一的标题栏,上面包括返回键,当前页的名称等,下面详细分析
这里我们在布局文件中引用了一个toolbar,下面是toolbar的布局文件:
import android.support.v7.app.AppCompatActivity;import android.view.View;import android.widget.ImageView;import android.widget.RelativeLayout;import android.widget.TextView;import com.ifreshwing.speedshooting.common.NoDoubleClickListener;public class BaseActivity extends AppCompatActivity { private TextView toolbar_string, toolbar_left_tv, toolbar_right_tv; private ImageView toolbar_left_im, toolbar_right_im; private RelativeLayout toolbar; public TextView getToolbar_string() { return toolbar_string; } public int getToolbarHeight() { toolbar = (RelativeLayout) findViewById(R.id.toolbar); return toolbar.getHeight(); } public void setToolbar_string(String str) { toolbar_string = (TextView) findViewById(R.id.toolbar_title); toolbar_string.setText(str); } public TextView getToolbar_left_tv() { return toolbar_left_tv; } public void setToolbar_left_tv(String str) { toolbar_left_tv = (TextView) findViewById(R.id.toolbar_left_tv); if (!str.equals("")) { toolbar_left_tv.setText(str); } toolbar_left_tv.setVisibility(View.VISIBLE); toolbar_left_tv.setOnClickListener(new NoDoubleClickListener() { @Override public void onNoDoubleClick(View v) { finish(); } }); } public TextView getToolbar_right_tv() { return toolbar_right_tv; } public void setToolbar_right_tv(String str) { toolbar_right_tv = (TextView) findViewById(R.id.toolbar_right_tv); toolbar_right_tv.setText(str); toolbar_right_tv.setVisibility(View.VISIBLE); } public ImageView getToolbar_left_im() { return toolbar_left_im; } public void setToolbar_left_im(int id) { toolbar_left_im = (ImageView) findViewById(R.id.toolbar_left_im); toolbar_left_im.setImageResource(id); toolbar_left_im.setVisibility(View.VISIBLE); toolbar_left_im.setOnClickListener(new NoDoubleClickListener() { @Override public void onNoDoubleClick(View v) { finish(); } }); } public ImageView getToolbar_right_im() { return toolbar_right_im; } public void setToolbar_right_im(int id) { toolbar_right_im = (ImageView) findViewById(R.id.toolbar_right_im); toolbar_right_im.setImageResource(id); toolbar_right_im.setVisibility(View.VISIBLE); } public void hindAll() { if (toolbar_left_im != null) { toolbar_left_im.setVisibility(View.GONE); } if (toolbar_left_tv != null) { toolbar_left_tv.setVisibility(View.GONE); } if (toolbar_right_im != null) { toolbar_right_im.setVisibility(View.GONE); } if (toolbar_right_im != null) { toolbar_right_im.setVisibility(View.GONE); } }}
然后在需要的Activity的布局文件加入
<include android:id="@+id/toolbar" layout="@layout/toolbar" />
在Activity的onCreate()方法写这两行代码就可以了
setToolbar_string("设置");setToolbar_left_tv("返回");
这样我们app风格不仅统一了,而且返回都可以不用点返回键了,是不是很简单呢?
更多相关文章
- Android(安卓)NDK开发基础
- Android中调用jni报错
- android的崩溃报告(crash dump)
- 【Android(安卓)Developers Training】 36. 设置文件共享
- android开发教程之listview使用方法
- Android(安卓)JNI之动态创建native
- android动态加载外部资源文件
- Android(安卓)Studio 教程(干货)
- Android(安卓)7.0的新特性