2

私はこのエラーを乗り越えることができないようです:

android.util.AndroidRuntimeException:カスタムタイトルを他のタイトル機能と組み合わせることはできません

14を超えるAPIを実行しています。

マニフェストは次のとおりです。

    <activity
        android:name=".activity.ActivityWelcome"
        android:label="@string/app_label_name"
        android:launchMode="singleTask"
        android:clearTaskOnLaunch="true"
        android:theme="@style/My.Theme">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

私の活動は次のことをしています。

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
    setContentView(R.layout.welcome);
    getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.window_title_main);
    ...

どこR.layout.window_title_mainにありますか:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/layout_title"
    android:orientation="horizontal"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:gravity="center_vertical"
    android:paddingLeft="5dp" >

    <TextView
        android:id="@+id/textview_title"
        android:drawableLeft="@null"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:ellipsize="marquee"
        android:marqueeRepeatLimit="-1"/>

</LinearLayout>

他の人のために機能しているように見えるのに、なぜこれが機能しないのですか?

4

3 に答える 3

6

これは、あなたを狂気に駆り立てるようなエラーです。

だから私はたまたまTheme.Holo親テーマとして使用しています。(自分のテーマが拡張するテーマ)

ドキュメントには次のように記載されています。

...アクション バーは、targetSdkVersion または minSdkVersion 属性が "11" 以上に設定されている場合の既定のテーマである Theme.Holo テーマ (またはその子孫の 1 つ) を使用するすべてのアクティビティに含まれます。

http://developer.android.com/guide/topics/ui/actionbar.html#Adding (最初の段落)

わかりましたので、上記のプロセスを実行しようとすると(私の質問)、エラーが発生します:

カスタム タイトルを他のタイトル機能と組み合わせることはできません

これは、既定でアクション バーが既に設定されており、カスタム タイトル バーも使用できないためです。

ドキュメントは、「各アクティビティにはアクションバーが含まれている」ことを明らかにしています:

このように、アプリケーションが Android 3.0 以降で実行されている場合、システムはホログラフィック テーマを各アクティビティに適用するため、各アクティビティにはアクション バーが含まれます。

そこで、タイトル バーではなく、アクション バーの変更に時間を集中します。

于 2012-12-10T18:00:04.370 に答える
2

FEATURE_CUSTOM_TITLE

<item name="android:windowNoTitle">true</item>

相互に排他的です。削除する

<item name="android:windowNoTitle">true</item>

そしてそれは再び機能します。

于 2012-12-10T16:52:39.587 に答える
0

初心者として、ほとんどの回答は私の場合には役に立ちませんでした。だからここに私の答えがあります。

Android プロジェクトの res/values フォルダーに移動し、strings.xml を確認します (このファイルは、themes.xml のようにケースによって異なる場合があります)。

リソース タグの下のファイル内で、スタイル タグがあるかどうかを確認します。見つからない場合は、以下のコードをリソース タグの子として追加します。

以下のようなもの

<resources>
    <style name="SomeNameHere">
        <item name="android:windowNoTitle">true</item>
    </style>
</resources>

すでにスタイル タグがある場合は、以下のコードをスタイル タグに追加するだけです

    <item name="android:windowNoTitle">true</item>
于 2015-02-20T14:51:53.927 に答える