استفاده از ویوپیجر(ViewPager) و رویداد کلیک در آن + (لینک آموزش استفاده از ویوپیجر بصورت کامل)
دوستان سلام


اگه بخوام بصورت خلاصه وار بگم
میخوام یه چیزی تو مایه های صفحه برنامه های اندروید (که با کشیدن یا درگ ، برنامه ها از چپ به راست و بالعکس جابه جا میشه ) درست کنم.
البته این صفحه ها شامل کلی برنامه اس ولی من میخوام تو یه لایوت از یه گروه Button استفاده کنم.
این گروه شامل 40 تا button هستش که میخوام دوتا صفحه ی 20 تایی بشه که قابلیت جابجایی با کشیدن سمت و راست رو داشته باشه.
چه راه حل هایی هست ؟
پیشاپیش تشکر میکنم از همه دوستان
طبق آموزش های استاد تونستم ویو پیجر تو پروژه م بیارم و کار کنم .
ولی باز مشکل دارم.اینکه چطور بجای تصویر، لایوت قرار بدم که خود لایوت شامل گروهی از Button هاست ، که هر Button هم میخوام وقتی کلیک شد کاری انجام بده
شما کد ImagePagerAdapter رو ببینید
kage com.uncocoder.course.app.screenshot_gallery;
import java.util.ArrayList;
import android.support.v4.view.PagerAdapter;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TextView;
public class ImagePagerAdapter extends PagerAdapter {
public ArrayList<Integer> imageIds;
public ArrayList<String> imageTitles;
public ImagePagerAdapter(ArrayList<Integer> imageIds, ArrayList<String> imageTitles) {
this.imageIds = imageIds;
this.imageTitles = imageTitles;
}
@Override
public int getCount() {
return imageIds.size();
}
@Override
public boolean isViewFromObject(View view, Object object) {
return view.equals(object);
}
@Override
public Object instantiateItem(ViewGroup container, int position) {
View view = G.layoutInflater.inflate(R.layout.sample, null);
TextView text = (TextView) view.findViewById(R.id.text);
ImageView image = (ImageView) view.findViewById(R.id.image);
text.setText(imageTitles.get(position));
image.setImageResource(imageIds.get(position));
container.addView(view);
return view;
}
@Override
public void destroyItem(ViewGroup container, int position, Object object) {
container.removeView((View) object);
}
}
اینم کد ActivityStartup
package com.uncocoder.course.app.screenshot_gallery;
import java.util.ArrayList;
import android.app.Activity;
import android.os.Bundle;
import android.support.v4.view.ViewPager;
import android.support.v4.view.ViewPager.OnPageChangeListener;
import android.util.Log;
public class ActivityStartup extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
final PageIndicator indicator = (PageIndicator) findViewById(R.id.indicator);
ArrayList<Integer> imageIds = new ArrayList<Integer>();
ArrayList<String> imageTitles = new ArrayList<String>();
for (int i = 1; i < 15; i++) {
int imageId = G.context.getResources().getIdentifier("image" + i, "drawable", G.context.getPackageName());
imageIds.add(imageId);
imageTitles.add("Nice Nature #" + i);
}
indicator.setIndicatorsCount(14);
ViewPager pager = (ViewPager) findViewById(R.id.pager);
pager.setOnPageChangeListener(new OnPageChangeListener() {
@Override
public void onPageSelected(int index) {}
@Override
public void onPageScrolled(int startIndex, float percent, int pixel) {
indicator.setPercent(percent);
Log.i("LOG", "Percent: " + startIndex + ", " + percent);
indicator.setCurrentPage(startIndex);
}
@Override
public void onPageScrollStateChanged(int arg0) {
}
});
ImagePagerAdapter adapter = new ImagePagerAdapter(imageIds, imageTitles);
pager.setAdapter(adapter);
}
}
ممنون میشم بگید چطوری تغییرش بدم که به هدفم برسم
شما میتونید در لایه ویو پیجر به جای عکس از لایه ای شامل دکمه استفاده کنید و با دیدن آموزش های استاد انجام اینکار بسیار ساده خواهد بود .
شما ابتدا آموزش ها رو مطالعه کنید و بعد در صورتی که به جواب نرسیدین تاپیک باز کنید ، چون خیلی از سوال ها یا در آموزش ها پاسخ داده شده و یا در انجمن قبلا توسط دوستان پاسخ داده شده
آموزش استفاده از ویوپیجر بصورت کامل
و این هم آموزش استفاده از رویداد کلیک روی آیتم در ویوپیجر
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .