どこで何かを見逃したかはわかりませんが、アクションバーにロゴを設定することはできません。私のAndroidManifest.xml:
<application
Android:icon="@drawable/application_icon"
Android:label="@string/icon_name"
Android:logo="@drawable/actionbar_logo"
Android:theme="@style/PolarTheme">
また、マニフェストのアクティビティタグにロゴを設定します。
<activity
Android:name=".Main"
Android:theme="@style/PolarThemeLogo"
Android:logo="@drawable/actionbar_logo"
Android:windowSoftInputMode="adjustPan">
</activity>
これは私のthemes.xmlにあります:
<style
name="PolarThemeLogo" parent="Theme.AppCompat.Light.DarkActionBar">
<item name="colorPrimary">@color/mainColor500</item>
<item name="colorPrimaryDark">@color/mainColor700</item>
<item name="colorAccent">@color/accentColorA200</item>
<item name="actionBarStyle">@style/MyActionBarLogo</item>
<item name="Android:windowContentOverlay">@null</item>
</style>
私のstyles.xml:
<style name="MyActionBarLogo" parent="@style/Widget.AppCompat.Light.ActionBar.Solid.Inverse">
<item name="background">@color/mainColor500</item>
<item name="displayOptions">useLogo</item>
</style>
私のMain.Javaで:
public class Main extends ActionBarActivity {
@SuppressLint("NewApi")
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
ActionBar actionBar = getSupportActionBar();
actionBar.setTitle("");
actionBar.setDisplayUseLogoEnabled(true);
何か案は?
更新-解決済み
すべてのAndroid:logo
私のAndroidManifest.xmlの属性と、次のようにMyActionBarLogoスタイルを変更しました。
<style name="MyActionBarLogo" parent="@style/Widget.AppCompat.Light.ActionBar">
<item name="background">@color/mainColor500</item>
<item name="logo">@drawable/actionbar_logo</item>
<item name="displayOptions">useLogo|showHome</item>
</style>
これで、アクションバーにロゴが表示されます。 :)
AndroidManifest.xmlからすべてのAndroid:logo属性を削除し、MyActionBarLogoスタイルを次のように変更しました。
<style name="MyActionBarLogo" parent="@style/Widget.AppCompat.Light.ActionBar">
<item name="background">@color/mainColor500</item>
<item name="logo">@drawable/actionbar_logo</item>
<item name="displayOptions">useLogo|showHome</item>
</style>
これで、アクションバーにロゴが表示されます。 :)
次のコードを使用してロゴを表示します。これが役立つことを願っています。
getSupportActionBar().setDisplayUseLogoEnabled(true);
getSupportActionBar().setDisplayShowHomeEnabled(true);
getSupportActionBar().setIcon(R.drawable.logo);
Java Fileに3行追加するだけで、XMLおよびAndroid manifest。
getSupportActionBar().setDisplayUseLogoEnabled(true);
getSupportActionBar().setDisplayShowHomeEnabled(true);
getSupportActionBar().setIcon(R.mipmap.ic_launcher);