Theme.Holo.Light Activity上端灰线问题

本文介绍了如何解决在TabActivity中出现的一条灰色分割线问题,通过调整Android应用的主题设置,将窗口内容覆盖图片设置为null,成功移除了多余的灰线。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

TabActivity放置Activity时_子Activity最上端的灰线问题

Activity分割线问题

Actionbar分割线问题

Title分割线

问题:

模仿MIUI的Setting,实现方法是新建一个快捷设置的Activit和SettingActivity放置在TabActivity里。但是发现Tab下面会有一条灰线,与小米设计有冲突,要求去掉这条灰线

排查原因:
界面问题一般使用hierarchyviewer来查看,先找找灰线是哪儿产生的
PhoneWindow$DecorView
	LinearLayout
		ViewStub(id/action_mode_bar_stub)
		FrameLayout(id/content)
			TabHost(id/tabhost)
				LinearLayout
					TabWidget(id/tabs)
						...
					FrameLayout(id/tabcontent)
						PhoneWindow$DecorView
							LinearLayout
								ViewStub(id/action_mode_bar_stub)
								FrameLayout(id/content)	- 有灰线 标记1
									LinearLayout(我们自己定义的Layout)	- 无灰线
										...

那就很明显了,这根灰线就是产生在“标记1”处。
根据PhoneWindow$DecorView知道这个是一个Activity的开始布局,是在PhoneWindow里使用的。结合布局文件,再加上打印log验证,知道使用的是布局screen_simple.xml
那就方便了,打开这个布局文件,看看有没有可疑信息
<FrameLayout
         android:id="@android:id/content"
         android:layout_width="match_parent"
         android:layout_height="match_parent"
         android:foregroundInsidePadding="false"
         android:foregroundGravity="fill_horizontal|top"
         android:foreground="?android:attr/windowContentOverlay" />
         知道有个foreground属性,windowContentOverlay,到Themes.xml里一查,果然是张背景图。在应用里设置
         <item name="android:windowContentOverlay">@null</item>
这根线就不在了

over
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值