MainActivity方法:
public class MainActivity extends AppCompatActivity {
private ViewPager vp;
private LinearLayout ly;
private List<String> imUrl;
private List<View> list;
private int num=0;
private int time=0;
private Handler handler=new Handler(){
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
vp.setCurrentItem(time);
}
};
private ListView list_view;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
vp = (ViewPager) findViewById(R.id.vp);
ly = (LinearLayout) findViewById(R.id.ly);
list_view = (ListView) findViewById(R.id.list_view);
initData();
vp.setAdapter(new Mydata());
onData();
vp.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
}
@Override
public void onPageSelected(int position) {
list.get(position % imUrl.size()).setBackgroundResource(R.mipmap.btn_radio_on_holo_dark);
list.get(num % imUrl.size()).setBackgroundResource(R.mipmap.btn_radio_on_disabled_holo_dark);
num=position;
}
@Override
public void onPageScrollStateChanged(int state) {
}
});
Getjiexi("http://apis.juhe.cn/cook/query?key="
+ URLEncoder.encode("7f5fe6023517b145df5d07dfe6d266a6")
+"&menu="+URLEncoder.encode("水煮魚"));
}
//無線輪播
private void onData() {
new Thread(){
@Override
public void run() {
super.run();
while (true){
SystemClock.sleep(3000);
time++;
handler.sendEmptyMessage(0);
}
}
}.start();
}
private void initData() {
imUrl = new ArrayList<>();
imUrl.add("http://f2.kkmh.com/image/160511/chrrrrs4v.webp-w750.jpg");
imUrl.add("http://f2.kkmh.com/image/170104/gio7ngxkf.webp-w750.jpg");
imUrl.add("http://f2.kkmh.com/image/160222/03wkn35ez.webp-w750.jpg");
list = new ArrayList<>();
for (int i = 0; i < imUrl.size(); i++) {
View view = new View(this);
view.setLayoutParams(new LinearLayout.LayoutParams(50,50));
list.add(view);
if (i==0){
list.get(i).setBackgroundResource(R.mipmap.btn_radio_on_holo_dark);
}else {
list.get(i).setBackgroundResource(R.mipmap.btn_radio_on_disabled_holo_dark);
}
ly.addView(list.get(i));
}
}
class Mydata extends PagerAdapter{
@Override
public int getCount() {
return Integer.MAX_VALUE;
}
@Override
public boolean isViewFromObject(View view, Object object) {
return view==object;
}
@Override
public void destroyItem(ViewGroup container, int position, Object object) {
container.removeView((View) object);
}
@Override
public Object instantiateItem(ViewGroup container, int position) {
final ImageView imageView = new ImageView(MainActivity.this);
new ImageLoder(new ImageLoder.ImageCall() {
@Override
public void callBitmap(Bitmap bitmap) {
imageView.setImageBitmap(bitmap);
}
}).execute(imUrl.get(position % imUrl.size()) );
container.addView(imageView);
return imageView;
}
}
//使用get解析數據
public void Getjiexi(String path){
new AsyncTask