অ্যান্ড্রয়েড ডিজাইনের টেক্সলআউট ট্যাবগুলির পাঠ্য আকার


100

ডিজাইনের লাইব্রেরি ট্যাবলআউট (android.support.design.widget.TabLayout) এর ট্যাবগুলির পাঠ্য আকার পরিবর্তন করতে আমার অসুবিধা হচ্ছে।

আমি ট্যাবলাইআউটে ট্যাবটেক্সট এপায়ারেন্স বরাদ্দ করে এটি পরিবর্তন করতে পেরেছি

app:tabTextAppearance="@style/MyTabLayoutTextAppearance"

নিম্নলিখিত শৈলী

<style name="MyTabLayoutTextAppearance" parent="TextAppearance.AppCompat.Widget.ActionBar.Title.Inverse">
    <item name="android:textSize">14sp</item>
</style>

তবে আমার 2 টি পার্শ্ব প্রতিক্রিয়া রয়েছে:

1) আমি নির্বাচিত ট্যাবের অ্যাকসেন্ট রঙ হারিয়েছি

2) ট্যাব পাঠ্য আর আর বড় করা হয় না।

উত্তর:


195
<style name="MineCustomTabText" parent="TextAppearance.Design.Tab">
    <item name="android:textSize">16sp</item>
</style>

ব্যবহার TabLayoutএই মত হয়

<android.support.design.widget.TabLayout
            app:tabTextAppearance="@style/MineCustomTabText"
            ...
            />

ভাল কাজ করছে। আমি সমর্থন lib 25.1.0 ব্যবহার করছি।
সুফিয়ান

25.3.1 সমর্থন লাইব্রেরিতে কাজ করে
লুইস

চমত্কার থ্যাক্স ভাই আপনি আমার সময় বাঁচান ,,,, এটি 25-2.0 লিবিতে কাজ করছে
কুণাল ধরাইয়া

@ সুফিয়ান, এটি আমার পক্ষে কাজ করছে না এবং আমি আপনার মতো সমর্থন সংস্করণটি ব্যবহার করছি (25.1.0)। কোন ধারণা কেন?
স্যাম

4
যদি আপনার ট্যাব পাঠ্যটি বহুমুখী হয়। তারপরে পাঠ্য আকার নির্ধারণ করতে একটি ভিন্ন ক্ষেত্র ব্যবহার করে এটি ট্যাবলআউট করুন। সমাধানের জন্য দয়া করে আমার উত্তরটি এখানে চেকআউট করুন: stackoverflow.com/a/48797329/700693
ইভেন ওজটর্ক

47

আপনি যেমন করেছিলেন তেমন ট্যাবেক্সটঅ্যাপেন্সেন্স ব্যবহার করুন

1) মূল শৈলীর পার্শ্ব প্রতিক্রিয়া ঠিক করতে আপনার স্টাইলে টেক্সটঅ্যালক্যাপ যুক্ত করুন:

<style name="MyTabLayoutTextAppearance" parent="TextAppearance.AppCompat.Widget.ActionBar.Title.Inverse">
    <item name="android:textSize">14sp</item>
    <item name="android:textAllCaps">true</item>
</style>

2) নির্বাচিত ট্যাব রঙের পার্শ্ব প্রতিক্রিয়া ঠিক করতে নীচের লাইব্রেরির বৈশিষ্ট্যগুলিতে ট্যাবলয়আউট এক্সএমএল যুক্ত করুন:

app:tabSelectedTextColor="@color/color1"
app:tabTextColor="@color/color2" 

আশাকরি এটা সাহায্য করবে.


এটি এখন কবজির মতো কাজ করে। আপনাকে উত্তর দেওয়ার জন্য ধন্যবাদ u2gilles।
মালকো

@ u2gilles আমি ট্যাবগুলিতে কাস্টম লেআউটটি ব্যবহার করেছি যা 2 টি পাঠ্যদর্শন দিয়ে রৈখিক হয় তবে আমি ট্যাব নির্বাচনের ক্ষেত্রে কেবল একটি পাঠ্যদর্শন রঙ পরিবর্তন করতে চাই?
এরম

4
আপনি যদি <আইটেমের নাম = "অ্যান্ড্রয়েড: টেক্সটআলক্যাপস"> মিথ্যা </item> সেট করতে চান তবে এখানে দ্বিগুণ ছাড়াও আরও একটি স্ট্রিং থাকা উচিত: <আইটেমের নাম = "টেক্সটআলক্যাপস"> মিথ্যা </item>
কোডটলাইফ

25

এপিআই 22 এবং 23 এ কাজ করুন এই স্টাইলটি তৈরি করুন:

<style name="TabLayoutStyle" parent="Base.Widget.Design.TabLayout">
    <item name="android:textSize">12sp</item>
    <item name="android:textAllCaps">true</item>
</style>

এবং এটি আপনার ট্যাবলআউটে প্রয়োগ করুন:

<android.support.design.widget.TabLayout
            android:id="@+id/contentTabs"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="10dp"
            android:background="@drawable/list_gray_border"
            app:tabTextAppearance="@style/TabLayoutStyle"
            app:tabSelectedTextColor="@color/colorPrimaryDark"
            app:tabTextColor="@color/colorGrey"
            app:tabMode="fixed"
            app:tabGravity="fill"/>

22

নিম্নলিখিত হিসাবে না।

1. এক্সএমএলে স্টাইল যুক্ত করুন

    <style name="MyTabLayoutTextAppearance" parent="TextAppearance.Design.Tab">
        <item name="android:textSize">14sp</item>
    </style>

2. স্টাইল প্রয়োগ করুন

ট্যাবলআউটযুক্ত লেআউটটি সন্ধান করুন এবং শৈলী যুক্ত করুন। যুক্ত লাইনটি সাহসী।

    <android.support.design.widget.TabLayout
        android:id="@+id/tabs"
        app:tabTextAppearance="@style/MyTabLayoutTextAppearance" 
        android:layout_width="match_parent"
        android:layout_height="wrap_content" />

18

নীচে উল্লিখিত স্নিপড চেষ্টা করুন, এটি আমার জন্যও কাজ করে।

আমার লেআউটটিতে xmlযেখানে আমার আছে TabLayout, TabLayoutনীচের মত স্টাইল যুক্ত করেছে :

<android.support.design.widget.TabLayout
    android:id="@+id/tab_layout"
    style="@style/MyCustomTabLayout"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    app:tabGravity="fill"
    app:tabMode="fixed" />

এবং আমার মধ্যে style.xmlআমি আমার লেআউট এক্সএমএল ব্যবহৃত স্টাইলটি সংজ্ঞায়িত করেছি, নীচে যুক্ত শৈলীর জন্য কোড চেক করুন:

<style name="MyCustomTabLayout" parent="Widget.Design.TabLayout">
    <item name="android:background">YOUR BACKGROUND COLOR</item>
    <item name="tabTextAppearance">@style/MyCustomTabText</item>
    <item name="tabSelectedTextColor">SELECTED TAB TEXT COLOR</item>
    <item name="tabIndicatorColor">SELECTED TAB INDICATOR COLOR</item>
</style>

<style name="MyCustomTabText" parent="TextAppearance.AppCompat.Button">
    <item name="android:textSize">YOUR TEXT SIZE</item>
    <item name="android:textStyle">bold</item>
    <item name="android:textColor">@android:color/white</item>
</style>

আমি আশা করি এটি আপনার পক্ষে কাজ করবে .....


15

আমার একই সমস্যা এবং অনুরূপ সমাধান:

1) আকার

এক্সএমএলে আপনার ট্যাবলআউট রয়েছে,

        <android.support.design.widget.TabLayout
            ...
            app:tabTextAppearance="@style/CustomTextStyle"
            ...
        />

তারপর শৈলীতে,

        <style name="CustomTextStyle" parent="@android:style/TextAppearance.Widget.TabWidget">
           <item name="android:textSize">16sp</item>
           <item name="android:textAllCaps">true</item>
        </style>

আপনি যদি বড় হাতের অক্ষর না চান তবে "অ্যান্ড্রয়েড: টেক্সটএলক্যাপস" এ মিথ্যা লিখুন

2) নির্বাচিত বা না নির্বাচিত ট্যাবগুলির পাঠ্য রঙ,

TabLayout tabLayout = (TabLayout) view.findViewById(R.id.tabs);
    tabLayout.setupWithViewPager(viewPager);

    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
        tabLayout.setTabTextColors(getResources().getColorStateList(R.color.tab_selector,null));
    } else {
        tabLayout.setTabTextColors(getResources().getColorStateList(R.color.tab_selector));
    }

তারপরে res / color / tab_selector.xML এ

<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:color="@color/white" android:state_selected="true" />
<item android:color="@color/white" />


8
TabLayout  tab_layout = (TabLayout)findViewById(R.id.tab_Layout_);

private void changeTabsFont() {
    Typeface font = Typeface.createFromAsset(getActivity().getAssets(), "fonts/"+ Constants.FontStyle);
    ViewGroup vg = (ViewGroup) tab_layout.getChildAt(0);
    int tabsCount = vg.getChildCount();
    for (int j = 0; j < tabsCount; j++) {
        ViewGroup vgTab = (ViewGroup) vg.getChildAt(j);
        int tabChildsCount = vgTab.getChildCount();
        for (int i = 0; i < tabChildsCount; i++) {
            View tabViewChild = vgTab.getChildAt(i);
            if (tabViewChild instanceof TextView) {
                ((TextView) tabViewChild).setTypeface(font);
                ((TextView) tabViewChild).setTextSize(15);

            }
        }
    }
}

এই কোডটি ট্যাবলআউট ব্যবহার করে আমার পক্ষে কাজ করে। এটি ফন্টের আকার পরিবর্তন করবে এবং ফন্টের শৈলীর পরিবর্তন করবে।

এটি আপনাকে ছেলেরা এই লিঙ্কটি চেক করতে সহায়তা করবে

https://stackoverflow.com/a/43156384/5973946

এই কোডটি টাবলআউট পরিবর্তন পাঠ্যের রঙ, টাইপ ফেস (ফন্ট শৈলী) এবং পাঠ্যের আকারের জন্য কাজ করে।


0

আমি অ্যান্ড্রয়েড পাই ব্যবহার করছিলাম এবং কিছুই অ্যাপ্লিকেশন: ট্যাবটেক্সটএপরিয়েন্স অ্যাট্রিবিউটের সাথে খেললাম বলে মনে হচ্ছে না worked আমি এটির সঠিক উত্তরটি জানি না তবে কারওর পক্ষে সহায়তা করতে পারে।

<android.support.design.widget.TabLayout
        android:id="@+id/tabs"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        app:tabMode="fixed"
        app:tabTextAppearance="@style/TextAppearance.AppCompat.Caption" />
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.