অ্যান্ড্রয়েড: অ্যাকশনবারের "হোম" আইকনটি অ্যাপ আইকন ছাড়া অন্য কিছু হতে কীভাবে পরিবর্তন করবেন?


114

আমার অ্যাপ্লিকেশনটির মূল আইকনটিতে একটি চিত্রের দুটি অংশ রয়েছে: একটি লোগো এবং এর নীচে কয়েকটি অক্ষর। এটি অ্যাপ্লিকেশনটির জন্য লঞ্চার আইকনটির জন্য ভাল কাজ করে তবে অ্যাকশনবারের বাম প্রান্তে যখন আইকনটি উপস্থিত হয়, তখন অক্ষরগুলি কেটে যায় এবং এটি দেখতে ভাল লাগে না।

আমি অ্যাকশনবারকে আইকনের একটি পৃথক সংস্করণ সরবরাহ করতে চাই, কেবলমাত্র "লোগো" অংশ এবং এর নীচে বর্ণগুলি নয়, তবে এখনও অবধি খালি প্রকাশ আসছিল। আমি সত্যই এর কোনও উত্তর খুঁজে পাই না, এবং আমি নিজেই কোথাও প্রশ্নটি খুঁজে পাচ্ছি না।

উত্তর:


218

অ্যাকশনবারটি যদি সরবরাহ করা হয় তবে আপনার ম্যানিফেস্টের অ্যান্ড্রয়েড: লোগো বৈশিষ্ট্যটি ব্যবহার করবে । এটি আপনাকে আইকন (লঞ্চার) এবং লোগো (অ্যাকশনবার, অন্যান্য জিনিসের মধ্যে) জন্য পৃথক অঙ্কনযোগ্য সংস্থান ব্যবহার করতে দেয়।


2
হাঁ। ম্যানিফেস্টের সরবরাহকারীর স্থানে ব্যবহৃত হবে এমন লোগো বা আইকন সরবরাহ করতে আপনি নিজের অ্যাকশন বারের জন্য কাস্টম স্টাইলও ব্যবহার করতে পারেন।
অ্যাডাম্প

@ জো, অ্যাপিকম্প্যাট ব্যবহার করে এপিআই <১১ এর যে কোনও সমাধান
ক্যাফেবাবে ১৯৯৯

49

অ্যান্ড্রয়েড ম্যানিফেস্ট.এক্সএমএল:

<application
    android:icon="@drawable/launcher"
    android:label="@string/app_name"
    android:name="com..."
    android:theme="@style/Theme">...</Application>

শৈলীতে। এক্সএমএল: (দেখুন android:icon)

<style name="Theme" parent="@android:style/Theme.Holo.Light">
    <item name="android:actionBarStyle">@style/ActionBar</item>
</style>
<style name="ActionBar" parent="@android:style/Widget.Holo.Light.ActionBar">
    <item name="android:icon">@drawable/icon</item>
</style>

অ্যান্ড্রয়েড: লোগো পাশাপাশি কাজ করবে। আমি পার্থক্য জানি না।
অ্যালিকেলজিন-কিলাকা

নিরাময়ের ক্ষত ছিঁড়ে দেওয়ার জন্য দুঃখিত :-) তবে পার্থক্যটি হ'ল এখানে প্রস্তাবিত স্টাইল পরিবর্তন সমাধানটি কেবলমাত্র অ্যাকশন বারে কাস্টম আইকন প্রয়োগ করে, যেখানে android:logoম্যানিফেস্টে সংজ্ঞায়িত করার সাথে অন্যান্য ক্ষেত্রগুলিকেও প্রভাবিত করতে পারে।
dbm

@ ডিবিএম, আপনি দয়া করে 'অন্যান্য অঞ্চলগুলির' উদাহরণ দিতে পারেন?
অ্যালিক্লিজিন-কিলাকা

2
হ্যাঁ, আমি খুব কৌতূহল পেয়েছিলাম আমি এটিতে গুগল করা শুরু করেছি এবং এটি অ্যান্ড্রয়েড বিকাশকারী সাইটটি বলে: ডেভেলপার.অ্যান্ড্রয়েড / গাইড / টপিক্স / ম্যানিফেস্ট / । এটি কীভাবে andorid:iconগুণবাচক থেকে আলাদা তা আমার কাছে স্পষ্ট নয় , যদিও: developer.android.com/guide/topics/manifest/…
dbm

2
অ্যাকশন দণ্ডে ডক এছাড়াও আপনি যোগ করতে পারেন বলে android:iconকরতে <activity>উপাদান যাতে আপনি সহজেই বিভিন্ন কার্যকলাপের জন্য এটা পরিবর্তন হতে পারে। আমি এটি চেষ্টা করেছিলাম এবং এটি দুর্দান্ত কাজ করেছে। কোনও কাস্টম থিমের সাথে ঝামেলা বা সমস্ত ক্রিয়াকলাপকে প্রভাবিত করার বিষয়ে চিন্তা করার দরকার নেই।
জেসন


8

আপনি যদি অ্যাপকম্প্যাট ব্যবহার করছেন, তবে আদা বা ত্বক (এপিআই 10) চালিত ডিভাইসগুলিতে অ্যাকশনবার আইকন সেট করার একমাত্র উপায় হ'ল অ্যান্ড্রয়েড: আইকন বৈশিষ্ট্যটি আপনার ম্যানিফেস্টে প্রতিটি ক্রিয়াকলাপে সেট করা বা অঙ্কনীয় প্রোগ্রামক্রমেটিক সেট করা।

<manifest>
    <application>
        ...
        <activity android:name="com.your.ActivityName"
            ...
            android:icon="@drawable/ab_logo"/>
        ...
   </application>
</manifest>

আপডেট: সতর্কতা অবলম্বন করুন যে অ্যাপ্লিকেশন আইকনটি যদি আপনি লঞ্চ ক্রিয়াকলাপে অ্যান্ড্রয়েড: আইকন বৈশিষ্ট্যটি সেট করেন তবে ওভাররাইড হবে। আমার প্রায় একমাত্র কাজ আমি জানি একটি স্প্ল্যাশ বা ডামি ক্রিয়াকলাপ হ'ল যা আপনার মূল ক্রিয়াকলাপ চালু করে।


কাজ করে না !! আপনি কি এটা চেষ্টা করেছেন? আমার এটির সমাধান দরকার দয়া করে।
অপূর্ব

8

থিআইটি দ্বারা অনুপ্রাণিত হয়ে আমি কেবলমাত্র ম্যানিফেস্ট ফাইলটি চালিয়ে এই কাজটি করতে পেরেছি তবে কিছুটা ভিন্ন ফ্যাশনে। অ্যাপ্লিকেশন সেটিংসে আইকনটি সেট করুন যাতে বেশিরভাগ ক্রিয়াকলাপটি আইকন পায়। আপনি যে লোগোটি প্রদর্শন করতে চান সেই ক্রিয়াকলাপে, ক্রিয়াকলাপের ঘোষণায় অ্যান্ড্রয়েড: লোগো বৈশিষ্ট্য যুক্ত করুন। নিম্নলিখিত উদাহরণে, কেবল লোগোঅ্যাক্টিভিটির লোগো থাকতে হবে, অন্যরা আইকনটিতে ডিফল্ট হবে।

<application
    android:name="com.your.app"
    android:icon="@drawable/your_icon"
    android:label="@string/app_name">

    <activity
        android:name="com.your.app.LogoActivity"
        android:logo="@drawable/your_logo"
        android:label="Logo Activity" >

    <activity
        android:name="com.your.app.IconActivity1"
        android:label="Icon Activity 1" >

    <activity
        android:name="com.your.app.IconActivity2"
        android:label="Icon Activity 2" >

</application>

আশা করি এটি অন্য কাউকে সাহায্য করবে!


আমি অ্যাপকম্প্যাট ভি 7 ব্যবহার করছি, কারণ আমি অ্যান্ড্রয়েড 2.3 সমর্থন করতে চাই, তবে আপনি পদ্ধতিটি কার্যকর হয় না।
লিয়াম xu

6

দয়া করে চেষ্টা করুন, যদি ব্যবহার করে "অ্যাপকম্প্যাটঅ্যাক্টিভিটি বাড়ায়" এবং উপস্থিত অ্যাকশনবার।

 ActionBar eksinbar=getSupportActionBar();
if (eksinbar != null) {
    eksinbar.setDisplayHomeAsUpEnabled(true);
    eksinbar.setHomeAsUpIndicator(R.mipmap.imagexxx);
}

3

লোগো তৈরি করা হচ্ছে

ফোল্ডারে " drawable-..." তাদের সকলের মধ্যে তৈরি করুন logo.png। ফোল্ডারগুলির অবস্থান: [YOUR APP]\app\src\main\res

AndroidManLive.xML এ লাইন যুক্ত করুন: android:logo="@drawable/logo"

<application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:logo="@drawable/logo"
    ...

এটাই.


0

এটি যাচাই করতে চান, আপনার অ্যাপ্লিকেশন আইকনগুলির জন্য আপনার প্রয়োজনীয় সমস্ত কিছু পেয়েছেন

http://developer.android.com/guide/practices/ui_guidelines/icon_design.html

হালনাগাদ

আমি মনে করি ডিফল্টরূপে এটি আপনার লঞ্চ আইকনটি ব্যবহার করে ... আপনার সেরা বাজিটি আলাদা চিত্র তৈরি করা ... অ্যাকশন বারের জন্য ডিজাইন করা এবং এটি ব্যবহার করে। এই পরীক্ষার জন্য: http://developer.android.com/guide/topics/ui/actionbar.html# ক্রিয়া আইটেম


আপনাকে এই লিঙ্কটির জন্য ধন্যবাদ, এবং আমি আমার আইকন থেকে চিঠিগুলি সরিয়ে এবং অ্যাপ্লিকেশনটিতে একই "লোগো" আইকনটি ব্যবহার করতে পারি তবে আমার এখনও এটির একটি ছোট সংস্করণ বা এটির কিছুটা আলাদা সংস্করণ ব্যবহার করার প্রয়োজন হতে পারে অ্যাকশনবার, এবং এটিই আমি সন্ধান করার চেষ্টা করছি।
ফিল রিংস্মুথ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.