Я создаю простое приложение для Android, где я хочу добавить к нему настраиваемую строку заголовка. Однако я столкнулся с проблемой при создании настраиваемой строки заголовка.Настройки Android custom bar заголовка
Вот мой OnCreate метод в GetPhoto классе активность:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
boolean titled = requestWindowFeature(Window.FEATURE_CUSTOM_TITLE
setContentView(R.layout.getphoto);
getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.title_complex);
initialize();
}
И мой title_complex.xml (для определения пользовательского заголовка):
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="35dip"
android:gravity="center_vertical"
android:orientation="horizontal" >
<Imageview
android:src="@drawable/header"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<TextView
android:text="Hello world!"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#7cfc00" />
</LinearLayout>
Когда я поставил GetWindow() setFeatureInt (.) после setContentView(), я получил такие ошибки:
FATAL EXCEPTION: main
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.featureselection/com.example.featureselection.GetPhoto}: android.view.InflateException: Binary XML file line #16: Error inflating class Imageview
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1968)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1993)
at android.app.ActivityThread.access$600(ActivityThread.java:127)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1159)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
...
featureelection - это имя приложения и GetPhoto - это класс, который содержит метод OnCreate, показанный выше. Я понятия не имею, почему это дает ошибки. Я видел, как другие люди также пишут такой код, и он отлично работает.
И еще одна вещь, если я положил getWindow(). SetFeatureInt() перед setContentView(), когда я запускаю свое приложение, он не дает ошибок, но ничего не отображается в пользовательской строке заголовка, тогда как я ожидаю изображение и «hello world», которые будут отображаться в пользовательской строке заголовка.
FYI: У меня тоже есть этот customer_style.xml в разрешении/значения папки:
<resources>
<style name="CustomWindowTitleBackground">
<item name="android:background">#008000</item>
</style>
<style name="CustomTheme" parent="android:Theme">
<item name="android:windowTitleSize">35dip</item>
<item name="android:windowTitleBackgroundStyle">@style/CustomWindowTitleBackground</item>
</style>
</resources>
установить стили.
Кто-нибудь знает, в чем проблема и как его решить? Любые seggestions или решения будут appricated.
Спасибо, что на самом деле была проблема .... это заставило меня чувствовать себя глупо ..... – user1642888