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

آموزش SlidingTabLayout Right To Left راست چین

saraei  8 سال پیش  8 سال پیش
+10 0

با سلام .
چند هفته هستش که شروع کردم به نوشتن برنامه و هر چی سوال می پرسم به جایی نرسیدم . ( جز 4 بار ) . حالا که جواب سوالم رو پیدا کردم برای شما هم میزارم . شاید به دردتون بخوره .

اولا موقع ست کردن ویو پیجر (viewPager) کد زیر رو هم اضافه میکنی

  slidingTabLayout.setViewPager(viewPager);
viewPager.setVerticalScrollBarEnabled(true);
viewPager.setCurrentItem(pagerAdapter.getCount()); // این کد رو اضافه میکنید تا آخرین صفحه به عن.ان صفحه نخست قرار بگیره . البته صفحه پیش فرض بگم بهتره تا صفحه نخست ..

بعد در کلاس SlidingTabLayout دنبال متود populateTabStrip میگردین و کدش رو به صورت زیر تغییر میدین .

@TargetApi(Build.VERSION_CODES.JELLY_BEAN_MR1)
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);
}
}
mTabStrip.setGravity(Gravity.RIGHT); // این کد رو باید اضافه کنید که آیتم ها رو به سمت راست میکشه :-)
}

قسمت بعدی رو تا چند لحظه دیگه میگم.

 

+1 0
دمت گرم داداش، خیلی دنبال این یه خط کد بودم، مرسی (8 سال پیش)
+1 0
کار نمیکنه داداش (8 سال پیش)
 برای این سوال 2 پاسخ وجود دارد.
پاسخ به سوال 
offset  8 سال پیش
0 0

اگر درست فهمیده باشم، برای اینکه Sliding TabLayout  راست به چپ بشه باید سراغ قسمتی بریم که لایه ای که Tab ها درون قرار دارن رو راست به چپ کنیم برای اینکار من این کد رو به کلاس    Sliding TabStrip  اضافه کردم ، یعنی در متد سازنده این کلاس کد زیر  را اضافه کردم.

 this.setGravity(Gravity.RIGHT);
 
پاسخ به سوال 
118674  8 سال پیش
0 0

سلام دوست عزیز میشه راهنمایی بفریمایید چطور میتونم رنگ تیتر تب را تغییر بدهم؟


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