Android—ViewPager+布局xml(View)
来源:互联网 发布:java class反编译工具 编辑:程序博客网 时间:2024/06/08 07:13
一、效果图
第一种:(图片轮换)
第二种:(布局轮换(View轮换))
① ② ③
二、布局文件
主布局
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="com.example.myapplication.ViewpagerActivity"> <android.support.v4.view.ViewPager android:layout_width="match_parent" android:layout_height="match_parent" android:id="@+id/view_page_iamges" > </android.support.v4.view.ViewPager></LinearLayout>
数据源布局:
布局一、
<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent"> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/b1" android:text="按钮一"/> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@id/b1" android:id="@+id/b2" android:layout_toRightOf="@id/b1" android:text="按钮二"/> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_toRightOf="@id/b2" android:text="按钮三"/> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@id/b2" android:layout_toLeftOf="@id/b2" android:text="按钮四"/> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@id/b2" android:layout_toRightOf="@id/b2" android:text="按钮五"/></RelativeLayout>
布局二、
<?xml version="1.0" encoding="utf-8"?><FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent"> <TextView android:layout_width="280dp" android:layout_height="280dp" android:background="#ff0000" android:layout_gravity="center" /> <TextView android:layout_width="240dp" android:layout_height="240dp" android:background="#00ff00" android:layout_gravity="center" /> <TextView android:layout_width="200dp" android:layout_height="200dp" android:background="#0000ff" android:layout_gravity="center" /> <TextView android:layout_width="160dp" android:layout_height="160dp" android:background="#ffee00" android:layout_gravity="center" /> <TextView android:layout_width="120dp" android:layout_height="120dp" android:background="#00ffe1" android:layout_gravity="center" /></FrameLayout>
布局三、
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" > <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="左上按钮" /> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="right" > <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="右上按钮" /> </LinearLayout> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="420dp" android:gravity="center" > <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="中间按钮" android:layout_gravity="center" /> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="bottom" > <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="左下按钮" /> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="right" > <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="右下按钮" /> </LinearLayout> </LinearLayout></LinearLayout>
三、Java代码
package com.example.myapplication;import android.content.Intent;import android.support.v4.view.PagerAdapter;import android.support.v4.view.ViewPager;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.view.View;import android.view.ViewGroup;import android.widget.ImageView;import java.util.ArrayList;import java.util.List;public class ViewpagerActivity extends AppCompatActivity { //第一种的图片数据源// private int images[]={R.drawable.cat,R.drawable.bird,R.drawable.fox}; //第二种的图片数据源 private int images[]={R.layout.linear,R.layout.acitivity_rel,R.layout.farme}; private List<View> views=new ArrayList<>(); private ViewPager view_page_iamges; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_viewpager); view_page_iamges = (ViewPager) findViewById(R.id.view_page_iamges); //第一种,实现图片的切换 /* for (int i = 0; i < images.length; i++) { ImageView iv=new ImageView(this); iv.setImageResource(images[i]); views.add(iv); }*/ //第二种实现布局的切换 for (int i = 0; i < images.length; i++) { View v=getLayoutInflater().inflate(images[i],null); views.add(v); } view_page_iamges.setAdapter(new myAdapter()); } class myAdapter extends PagerAdapter{ @Override public int getCount() { return views.size(); } @Override public boolean isViewFromObject(View view, Object object) { return view==object;//官方也是这样写的 } @Override public Object instantiateItem(ViewGroup container, int position) { View v=views.get(position); container.addView(v); return v; } @Override public void destroyItem(ViewGroup container, int position, Object object) { View v=views.get(position); container.removeView(v); } }}
阅读全文
0 0
- Android—ViewPager+布局xml(View)
- ViewPager+布局xml(View)
- ViewPager+布局xml(View)
- Android View布局xml常用 属性详解
- Android 自定义View引用xml布局
- android XML布局和子View按比例布局
- android XML布局和子View按比例布局
- android.support.v4.view.ViewPager 引入,却报XML 错误
- Android_ViewPager+布局xml(View)
- Android自定义View——自定义ViewPager
- Android自定义View——自定义ViewPager
- Android—ViewPager+Activity(View) [已过时]
- Android - View - ViewPager
- Android viewpager view
- android的XML布局文件上使用自定义View类
- Android布局解析的三种方法(.xml-->View)
- Android XML布局与View之间的转换
- Android XML布局与View之间的转换
- Nginx 常用全局变量 及Rewrite规则详解
- 【Machine Learning】【Python】一、HoG + SVM 物体分类 ---- 《SVM物体分类和定位检测》
- Hive提示警告SSL
- Kotlin-Android世界的一股清流-Package
- 一键重装系统工具哪个好?人人都会用的一键重装软件
- Android—ViewPager+布局xml(View)
- Python文件/文件夹操作大全
- 赛马问题
- 利用定时器定时发送邮箱邮件
- 如何从参与开源项目的过程中获取自信
- KM最容易看懂的教程和参考程序
- ijkplayer视频播放器源码分析(android)
- Scut服务器创建定时器的方法
- Opencv学习之线性滤波