标题栏自定义布局:
<com.xxx.TopBar android:id="@+id/top_bar" android:layout_width="match_parent" android:layout_height="wrap_content"/>
private void initTopBar() { topBar.setTitile("帮你贷").setVisible(false).setTitleBarListener(new TopBar.BtnClickListener() { @Override public void leftClick() { finish(); } @Override public void rightClick() { } }); }
TopBar.java类
public class TopBar extends RelativeLayout implements View.OnClickListener { private BtnClickListener listener; private ImageView back; private TextView titile,right_txt; private RelativeLayout bg_color; private View view; public void setTitleBarListener(BtnClickListener listener) { this.listener = listener; } public interface BtnClickListener { void leftClick(); void rightClick(); } public TopBar(Context context) { super(context); } public TopBar(Context context, AttributeSet attrs) { super(context, attrs); init(context); } private void init(Context context) { LayoutInflater.from(context).inflate(R.layout.top, this); view= (View) findViewById(R.id.view); bg_color = (RelativeLayout) findViewById(R.id.bg_color); back = (ImageView) findViewById(R.id.back); titile = (TextView) findViewById(R.id.titile); right_txt= (TextView) findViewById(R.id.right_txt); back.setOnClickListener(this); right_txt.setOnClickListener(this); } @Override public void onClick(View view) { switch (view.getId()){ case R.id.back: listener.leftClick(); break; case R.id.right_txt: listener.rightClick(); break; } } /** * 设置背景颜色 */ public TopBar setTopBackgroundColor(int color){ bg_color.setBackgroundColor(getResources().getColor(color));//////这样才可以 return this; } /** * 设置文字颜色 */ public TopBar setTextColor(int color){ titile.setTextColor(this.getResources().getColor(color)); return this; } /** * 设置文字 * @param string * @return */ public TopBar setRightTxt(String string){ right_txt.setText(string); return this; } /** * 设置文字 * @param string * @return */ public TopBar setTitile(String string){ titile.setText(string); return this; } /** * 编辑框是否可见 */ public TopBar setVisible(Boolean flag){ if (flag) { back.setVisibility(GONE); } else { back.setVisibility(VISIBLE); } return this; } /** * 编辑框是否可见 */ public TopBar setVisibleView(Boolean flag){ if (flag) { view.setVisibility(GONE); } else { view.setVisibility(VISIBLE); } return this; } }
top.xml布局
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/bg_color" android:layout_width="match_parent" android:layout_height="48dp" android:background="@android:color/white" > <ImageView android:padding="5dp" android:id="@+id/back" android:layout_width="wrap_content" android:layout_height="match_parent" android:src="@drawable/back" android:gravity="center" android:textSize="16sp" android:layout_above="@+id/view" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" /> <TextView android:id="@+id/titile" android:gravity="center" android:layout_centerHorizontal="true" android:layout_width="wrap_content" android:layout_height="match_parent" android:textColor="#555555" android:textSize="16sp" /> <TextView android:id="@+id/right_txt" android:layout_marginRight="10dp" android:gravity="center" android:layout_alignParentRight="true" android:layout_width="wrap_content" android:layout_height="match_parent" android:textColor="#555555" android:textSize="14sp" /> <View android:layout_alignParentBottom="true" android:layout_width="match_parent" android:layout_height="0.1dp" android:background="#c2c2c2" android:id="@+id/view" /> </RelativeLayout>
相关推荐
本主题聚焦于"Android UI模板设计 - TopBar 标题栏的设计",旨在探讨如何通过自定义控件实现TopBar的高效复用,从而提升开发效率和应用一致性。 TopBar,通常位于界面顶部,承载着展示应用标识、页面标题、功能操作...
本项目中的"自定义View源代码"主要聚焦于一个名为"TopBar"的文件,这通常是应用顶部导航栏的自定义实现。下面将详细解释与自定义View相关的知识点,并结合TopBar文件进行分析。 1. **自定义View的基本步骤**: - ...
在Android应用开发中,TopBar通常指的是应用顶部的导航栏,它包含应用的标题、返回按钮和其他操作选项,是用户界面的重要组成部分。本教程将详细讲解如何进行自定义TopBar和属性封装,以便让界面风格更统一,同时...
这个模板以老版QQ的顶部栏为例,它通常包含左右两个按钮和一个中间的标题。 首先,我们创建一个attrs.xml文件在res/values目录下,用于定义自定义属性。这些属性包括标题文字(title)、标题背景(titleBacgroud)...
TopBar,通常称为标题栏,是用户界面中的重要组成部分,用于显示当前页面的标题以及提供一些常用的操作入口。本教程将深入探讨如何在Android中设计并实现一个自定义的TopBar。 首先,我们来了解TopBar的基本构成。...
在给定的压缩包文件"TopBar"中,可能包含了一个自定义的顶部栏组件,例如,它可能包括一个标题TextView、一个返回按钮ImageView以及一些其他的功能按钮。通过组合这些元素,我们可以在整个应用中统一顶部导航栏的...
创建自定义Topbar的第一步是定义一个自定义View类,这个类将继承自Android的LinearLayout或ToolBar。在自定义View中,我们可以添加所需的UI元素,比如ImageView用于显示Logo,TextView用于显示标题,以及Button或...
TopBar通常用作应用程序顶部的导航栏,它能展示标题、菜单图标等元素,为用户提供清晰的操作指引。 1. **创建自定义View类** 首先,我们需要创建一个新的Java类,继承自Android的`View`或`ViewGroup`。在这个例子中...
标题中的"android自定义View—顶部导航栏"正是指这个过程,它旨在创建一个可重用的组件,用于在多个Activity之间提供一致的导航体验。 首先,我们从基础开始,理解Android中的自定义View。自定义View是扩展系统提供...
本文实例为大家分享了Android自定义view实现TopBar的具体代码,供大家参考,具体内容如下 布局文件 <?xml version=1.0 encoding=utf-8?> <RelativeLayout xmlns:android=...
在Android应用开发中,自定义TopBar是一种常见的需求,它能根据项目的具体设计风格和功能需求进行个性化定制,提升用户体验。本教程将深入探讨如何在Android中实现自定义TopBar,以及其背后的原理和实践技巧。 一、...
在Android应用开发中,"自定义组合控件topbar"是一个常见的需求,它通常指的是一个包含多种功能元素的顶部导航栏。这样的控件可以提供更好的用户体验,并且可以根据设计师的需要进行定制,以满足应用程序的独特风格...
在Android应用开发中,自定义TopBar(也称为标题栏或ActionBar)是常见的需求,它允许开发者根据应用的品牌和设计规范来个性化应用的界面。本文将深入探讨如何在Android中实现自定义TopBar,包括设置按钮、文字、...
在Android应用开发中,自定义标题栏(TopBar)是一个常见的需求,因为它可以提供独特的用户界面体验,并且有助于品牌识别。通常,Android系统默认提供一个简单的ActionBar或Toolbar,但为了满足设计上的独特性和功能...
为了封装一个自定义的Topbar,我们需要创建一个新的布局文件,定义所需元素,如TextView用于显示标题,ImageView用于放置应用图标,以及可能的ActionBar或ToolBar中的其他自定义按钮。在Java代码中,我们可以创建一...
为了隐藏标题栏,我们需要创建一个继承自Android原生主题(如`Theme.AppCompat.Light.NoActionBar`或`Theme.Material3.DayNight.NoActionBar`,具体取决于你的Android支持库版本)的新主题。在`styles.xml`文件中...
总结来说,`topbar`工具是Android开发中的一个自定义组件,通过封装常见的顶部导航栏功能,提供了便捷的集成方式。使用时,开发者只需在布局文件中声明并配置组件,即可轻松创建符合应用风格的Topbar,同时还能通过...
在"TopBar"的实现中,我们首先会创建一个新的Java类,继承自Android的基础视图类,例如`View`或`LinearLayout`。这样做可以让我们覆盖父类的方法,添加自己的属性和行为。类名可能是`CustomTopBar`,并包含必要的...