您现在的位置是:主页 > news > 北京网站建设 优化/网络营销发展方案策划书

北京网站建设 优化/网络营销发展方案策划书

admin2025/5/31 22:11:17news

简介北京网站建设 优化,网络营销发展方案策划书,可以做问卷的网站,网站开发项目教程看开源框架:https://github.com/tianshaojie/AndroidFine,里面有如下效果,特记录学习下,以后项目中用也好能够立刻想起来。如上面所示,是常见项目中的图片轮训和展示效果,技术主要涉及到viewpagerphotoview…

北京网站建设 优化,网络营销发展方案策划书,可以做问卷的网站,网站开发项目教程看开源框架:https://github.com/tianshaojie/AndroidFine,里面有如下效果,特记录学习下,以后项目中用也好能够立刻想起来。如上面所示,是常见项目中的图片轮训和展示效果,技术主要涉及到viewpagerphotoview…
看开源框架:https://github.com/tianshaojie/AndroidFine,里面有如下效果,特记录学习下,以后项目中用也好能够立刻想起来。
 
如上面所示,是常见项目中的图片轮训和展示效果,技术主要涉及到viewpager+photoview,那下面主要讲解如何在android App中如何实现该效果:
  1. 导入photoview相关代码:
    
    2.   头部轮训和展示的代码:
    
第1个页面的实现:
首先看布局:
activity_photoview.xml文件
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:layout_height="160dp"android:background="@color/white" ><com.soyoungboy.widget.loopviewpager.AutoLoopViewPagerandroid:id="@+id/pager"android:layout_width="fill_parent"android:layout_height="fill_parent" /><com.soyoungboy.widget.viewpagerindicator.CirclePageIndicatorandroid:id="@+id/indicator"android:layout_width="match_parent"android:layout_height="wrap_content"android:layout_alignParentBottom="true"android:layout_centerHorizontal="true"android:layout_marginBottom="5dp"android:padding="5dp" />
</RelativeLayout>

 

PhotoViewActivity.java文件
  1. public class PhotoViewActivity extends BaseFragmentActivity {private com.soyoungboy.widget.loopviewpager.AutoLoopViewPager pager;private int[] imageViewIds;private com.soyoungboy.widget.viewpagerindicator.CirclePageIndicator indicator;private List<String> imageList = new ArrayList<String>(Arrays.asList("http://pic.nipic.com/2008-07-11/20087119630716_2.jpg","http://pic.nipic.com/2008-07-11/20087119630716_2.jpg","http://pic.nipic.com/2008-07-11/20087119630716_2.jpg"));@Overrideprotected void onCreate(Bundle arg0) {super.onCreate(arg0);setContentView(R.layout.activity_photoview);initView();}@Overrideprotected void initView() {pager = (com.soyoungboy.widget.loopviewpager.AutoLoopViewPager) findViewById(R.id.pager);indicator = (com.soyoungboy.widget.viewpagerindicator.CirclePageIndicator) findViewById(R.id.indicator);//设置要显示的图片内容imageViewIds = new int[] { R.drawable.house_background, R.drawable.house_background_1, R.drawable.house_background_2};//适配器GalleryPagerAdapter galleryAdapter = new GalleryPagerAdapter();pager.setAdapter(galleryAdapter);indicator.setViewPager(pager);//控制距离左边,上边,右边,下边的px距离indicator.setPadding(5, 5, 10, 5);}@Overrideprotected void initTitleView() {}@Overrideprotected void click(View view) {}//轮播图适配器public class GalleryPagerAdapter extends PagerAdapter {@Overridepublic int getCount() {return imageViewIds.length;}@Overridepublic boolean isViewFromObject(View view, Object object) {return view == object;}@Overridepublic Object instantiateItem(ViewGroup container, int position) {ImageView item = new ImageView(PhotoViewActivity.this);//Imageview上面显示图片
                item.setImageResource(imageViewIds[position]);ViewGroup.LayoutParams params = new ViewGroup.LayoutParams(-1, -1);item.setLayoutParams(params);item.setScaleType(ImageView.ScaleType.FIT_XY);container.addView(item);final int pos = position;//Imageview单击事件处理item.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {//进入ImageGalleryActivity代码里面去Intent intent = new Intent(PhotoViewActivity.this, ImageGalleryActivity.class);intent.putStringArrayListExtra("images", (ArrayList<String>) imageList);intent.putExtra("position", pos);startActivity(intent);}});return item;}@Overridepublic void destroyItem(ViewGroup collection, int position, Object view) {collection.removeView((View) view);}}@Overrideprotected void onResume() {super.onResume();//开始自动左右切换图片
            pager.startAutoScroll();}@Overrideprotected void onPause() {super.onPause();//结束自动左右切换图片
            pager.stopAutoScroll();}
    }

     


第2张图功能实现:
首先布局文件activity_touch_gallery.xml

 

 

  1. <?xml version="1.0" encoding="utf-8"?>
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="fill_parent"android:layout_height="fill_parent"android:fitsSystemWindows="true"android:background="@color/black"><android.support.v4.view.ViewPagerandroid:id="@+id/viewer"android:layout_width="fill_parent"android:layout_height="fill_parent"android:layout_below="@+id/layoutHeader" /></RelativeLayout>

     


ImageGalleryActivity .java
public class ImageGalleryActivity extends BaseFragmentActivity {private int position;private List<String> imgUrls; //图片列表private TextView headTitle;private Button headBackBtn;private ViewPager mViewPager;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_touch_gallery);Intent intent = getIntent();position = intent.getIntExtra("position", 0);//获取图片的url List集合imgUrls = intent.getStringArrayListExtra("images");if(imgUrls == null) {imgUrls = new ArrayList<>();}initGalleryViewPager();}@Overrideprotected void onDestroy() {super.onDestroy();}private void initGalleryViewPager() {PhotoViewAdapter pagerAdapter = new PhotoViewAdapter(this, imgUrls);pagerAdapter.setOnItemChangeListener(new PhotoViewAdapter.OnItemChangeListener() {int len = imgUrls.size();@Overridepublic void onItemChange(int currentPosition) {//滑动到总图片数目的几分之几
//                headTitle.setText((currentPosition+1) + "/" + len);
                }});mViewPager = (ViewPager)findViewById(R.id.viewer);mViewPager.setOffscreenPageLimit(3);mViewPager.setAdapter(pagerAdapter);mViewPager.setCurrentItem(position);}@Overrideprotected void initView() {}@Overrideprotected void initTitleView() {}@Overrideprotected void click(View view) {}}

 

PhotoViewAdapter代码可参考:
https://github.com/tianshaojie/AndroidFine/blob/master/app/src/main/java/com/yuzhi/fine/ui/photoview/PhotoViewAdapter.java
loopviewpager包下代码可参考:
https://github.com/tianshaojie/AndroidFine/tree/master/app/src/main/java/com/yuzhi/fine/ui/loopviewpager