آموزش های این وب سایت به صورت رایگان در دسترس است. اطلاعات بیشتر
مشکل عدم دسترسی خریداران پیشین به برخی آموزش ها برطرف شد
بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]

مشکل در تغییر رنگ متن تب ها در SlidingTabLayout

118674  9 سال پیش  9 سال پیش
0 0

سلام دوستان من میخوام در SlidingTabLayout رنگ تب فعال به تب های دیگر فرق بکند ولی هر کاری میکنم درست نمیشه لطفا راهنمایی کنید

در کلاس SlidingTabLayout.java      یه متد هست private void populateTabStrip() کدهای متد به شرح زیر است . ولی باز هم درست کار نمیکنه - دو تا فایل selector.xml - tab_text_color.xml   را هم در پوشه color ایجاد کردم و محتوا را هم گذاشتم در زیر


    private void populateTabStrip() {
         final PagerAdapter adapter = mViewPager.getAdapter();
         final OnClickListener tabClickListener = new TabClickListener();

         for (int i = 0; i < adapter.getCount(); i++) {
         View tabView = null;
        TextView tabTitleView = null;

         if (mTabViewLayoutId != 0) {
         // If there is a custom tab view layout id set, try and inflate it
        tabView = LayoutInflater.from(getContext()).inflate(mTabViewLayoutId, mTabStrip,
         false);
        tabTitleView = (TextView) tabView.findViewById(mTabViewTextViewId);
        }

         if (tabView == null) {
         tabView = createDefaultTabView(getContext());
 
        }

         if (tabTitleView == null && TextView.class.isInstance(tabView)) {
         tabTitleView = (TextView) tabView;
        }

         if (mDistributeEvenly) {
         LinearLayout.LayoutParams lp = (LinearLayout.LayoutParams) tabView.getLayoutParams();
        lp.width = 0;
        lp.weight = 1;
        }

         tabTitleView.setText(adapter.getPageTitle(i));
        tabView.setOnClickListener(tabClickListener);
        String desc = mContentDescriptions.get(i, null);
         if (desc != null) {
         tabView.setContentDescription(desc);
        }

         mTabStrip.addView(tabView);
         if (i == mViewPager.getCurrentItem()) {
             tabView.setSelected(true);
         onPageSelected(mViewPager.getCurrentItem());
       
        }
       
         }
         mTabStrip.setGravity(Gravity.RIGHT);
         
        }

  
    public void onPageSelected(int position) {

        for (int i = 0; i < mTabStrip.getChildCount(); i++) {

          TextView tv = (TextView) mTabStrip.getChildAt(i);
         if (i==position)
          tv.setTextColor(getResources().getColorStateList(R.color.selector));
         else                            
          tv.setTextColor(getResources().getColorStateList(R.color.tab_text_color));

                }}
            ****************************************** محتوای selector.xml ****************

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_selected="true" android:color="@android:color/black" />
    <item android:state_focused="true" android:color="@android:color/black" />
    <item android:state_pressed="true" android:color="@android:color/black" />
    <item android:color="#dddddd" />
</selector>

************************************************ محتوای tab_text_color.xml *********************

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

 

 

لطفا راهنمایی کنید دوستان - با تشکر


           

 

0 0
لطفأ منظم بنویسید که زودتر به جواب مطلوب برسید، من که خودم همچین سئوالای بی منظمی رو اصلأ کدشو نمیخونم و بررسی نمیکنم ! (9 سال پیش)
 برای این سوال پاسخی وجود ندارد.

پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .