Android 每个Activity界面,都会自动生成一个灰色的标题栏,在编写程序时,可以选择是否有标题栏,或者自定义标题栏,自定义标题栏时,可以在标题栏位置,放置一个布局
系统自带:
可以通过:
this.requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
setContentView(R.layout.main);
this.getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE,R.layout.custom_title);
将标题栏设置成自定义的布局文件:R.layout.custom_title
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center_vertical"
android:background="@drawable/category_bar"
>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="这是自定义标题栏"
android:textColor="@android:color/black"
/>
</LinearLayout>
但发现带背景图的自定义标题栏布局无法充满屏幕(横向)
原因是系统默认的样式,预留了左右一小部分空间
解决办法是:
在values资源文件夹下建立my_style.xml文件,内容为:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="MyTheme" parent="android:Theme">
<item name="android:windowTitleBackgroundStyle">@null</item>
</style>
</resources>
自定义样式,继承自系统的主题,设置android:windowTitleBackgroundStyle属性为@null,然后再主配置文件中把Activity的主题设置为自定的MyTheme即可。
<activity android:name=".CustomTitleActivity"
android:theme="@style/MyTheme" android:label="@string/app_name">
效果图:
- 大小: 9.2 KB
- 大小: 9.5 KB
- 大小: 9.4 KB
分享到:
相关推荐
通常,高度设为`wrap_content`,宽度设为`match_parent`以填满父容器。 在Activity中,我们需要找到Toolbar并设置其属性,例如: ```java Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); toolbar....
"仿微信标题栏右上角PopupWindow.zip"是一个针对Android平台的源码示例,旨在帮助开发者了解并实现类似微信标题栏上的弹出窗口功能。PopupWindow是Android SDK提供的一种轻量级的对话框组件,它可以在屏幕任意位置...
3. 轮流下棋:每一步棋后,切换到另一个玩家,直到游戏结束(一方获胜或棋盘填满)。 4. 保存和加载游戏:为了实现游戏的保存和继续功能,可以将当前棋盘状态序列化成JSON字符串,保存到本地文件或者云端。加载时反...
同时,在ImageView的父布局中可以使用layout_weight属性和fillViewport属性来确保ImageView能够填满ScrollView的可视区域。示例代码如下: ```xml <ScrollView xmlns:android="***" android:layout_width="match_...
- 确保在适当的时候清除通知,避免通知栏被无用的通知填满。 - 如果应用被用户关闭或系统资源紧张,可以考虑使用头部通知(heads-up notification)以吸引用户注意力。 通过这五个示例源代码,开发者可以学习如何...
设置其宽度和高度,通常设置为MATCH_PARENT,以便填满整个屏幕宽度。通过`android:numColumns`属性指定列数,对于横向菜单栏,通常设置为1。 2. **适配器**:创建一个自定义适配器,继承自BaseAdapter或...
- 确保`TabLayout`的宽度填满父容器,以便于滑动操作。 - 在自定义`TabLayout`时,保持对Android版本的兼容性。 通过以上步骤,你可以实现一个类似于今日头条的滑动标签栏。这个项目的代码示例是一个很好的学习...
在Android自定义控件中,组合控件的含义是什么?** 本题考察的是Android中自定义控件的概念。 - **正确选项:** - B. 继承原生控件,然后进行一些修改 - **解析:** - A. 组合控件不仅仅是简单的控件组合。 -...
标题中的“文字自动滚动TextView(长度不够也可以)”就是指即使文字内容不足以填满整个屏幕,也能实现这种滚动效果。 `Marquee` 是`TextView` 的一个特性,它允许文本在宽度不足的情况下仍然能沿水平方向滚动。...
`center`会让所有标签居中,而`fill`则会让标签填满整个`TabLayout`宽度。 3. **setupWithViewPager()**: 这是将`TabLayout`与`ViewPager`关联的关键方法,通过传入`ViewPager`对象,`TabLayout`可以从`ViewPager`...
Flow Layout是最基础的布局管理器,按照从左到右、从上到下的顺序排列组件,当一行填满后自动换行。在创建一个JFrame或JPanel时,默认使用的布局管理器就是FlowLayout。例如,当你添加多个按钮时,它们会像文字一样...