gpt4 book ai didi

android - 带有图像的自定义标题

转载 作者:IT老高 更新时间:2023-10-28 22:02:18 26 4
gpt4 key购买 nike

我正在通过禁用标准标题并自己管理所有内容来为 Activity 创建自定义标题。我想知道是否可以根据我的需要替换/主题标准标题。

我可以通过更改 windowXYZStyle 项来通过主题自定义大小、背景图像和文本。

我唯一找不到的东西 - 我如何添加图像而不是文本。我试过 requestWindowFeature(Window.FEATURE_CUSTOM_TITLE)并分配自定义布局 - 但它似乎不起作用。

编辑:这是测试建议的报告,代码如下 - 结果 - ImageView 未显示。

Activity

public class SettingsActivity extends PreferenceActivity  {

@Override
protected void onCreate(Bundle savedInstanceState) {
requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.custom_title);
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.settings);

}
}

XML :

<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/title"
android:layout_width="fill_parent"
android:layout_height="26dip"
android:paddingLeft="5dip"
android:background="@drawable/titlebar_bg"
android:layout_gravity="left|center"
>
<ImageView
android:id="@+id/logo"
android:src="@drawable/title_logo"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />

</LinearLayout>

最佳答案

您可以设置自己的自定义标题布局,但执行顺序很重要。你必须按这个顺序做事:

requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
setContentView(R.layout.my_layout);
getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.my_custom_title);

此外,您可能需要增加标题的大小;如果你不这样做,那么你的自定义布局的底部可能会被你的 Activity 覆盖。您可以通过添加指定标题大小的主题来更改大小。这将进入一个值 XML 文件:

<resources>
<style name="LargeTitleTheme">
<item name="android:windowTitleSize">40dip</item>
</style>
</resources>

然后您需要在 AndroidManifest.xml 中为您的 Activity(或应用程序,如果您希望整个应用程序具有此自定义标题栏)设置主题:

<activity android:name=".MyCustomTitleActivity" android:theme="@style/LargeTitleTheme" />

关于android - 带有图像的自定义标题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2086989/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com