基础UI控件:
按钮,编辑框,单选按钮,复选框,计时器,日期选择器,时间选择器,图片按钮,文本框。
Button,EditText,RadioButton,CheckBox,Chronometer,DatePicker,TimePicker,ImageButton,TextView。
图像切换器:ImageSwitcher。
Android基础学习,话不多说,上代码:
activity_main.xml:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<ImageSwitcher
android:id="@+id/imageswitcher"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true">
</ImageSwitcher>
</RelativeLayout>
MainActivity.java:
package com.zzx.showpictures;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.MotionEvent;
import android.view.View;
import android.view.WindowManager;
import android.widget.ImageSwitcher;
import android.widget.ImageView;
import android.widget.ViewSwitcher;
public class MainActivity extends AppCompatActivity {
private int[] arrayPicture=new int[]{R.mipmap.img01,R.mipmap.img02,R.mipmap.img03,
R.mipmap.img04,R.mipmap.img05,R.mipmap.img06,
R.mipmap.img07,R.mipmap.img08,R.mipmap.img09};
private ImageSwitcher imageSwitcher;
private int index;
private float touchDownX;
private float touchUpX;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN); //设置全屏显示
imageSwitcher=findViewById(R.id.imageswitcher);
imageSwitcher.setFactory(new ViewSwitcher.ViewFactory() {
@Override
public View makeView() {
ImageView imageView=new ImageView(MainActivity.this);
imageView.setImageResource(arrayPicture[index]);
return imageView;
}
});
imageSwitcher.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
if(event.getAction()==MotionEvent.ACTION_DOWN){
touchDownX=event.getX();
return true;
}else if(event.getAction()==MotionEvent.ACTION_UP){
touchUpX=event.getX();
if(touchUpX-touchDownX>100){ //判断为从左向右滑动
index=index==0?arrayPicture.length-1:index-1;
//动画资源
imageSwitcher.setImageResource(arrayPicture[index]);
}
else if(touchDownX-touchUpX>100){ //判断为从左向右滑动
index=index==arrayPicture.length-1?0:index+1;
//动画资源
imageSwitcher.setImageResource(arrayPicture[index]);
}
return true;
}
return false;
}
});
}
}
图片资源随意放上几个即可,建议使用png。
演示效果,因为没有添加动画资源,所以只能看出来切换,并没有看出来切换过程:
我是用alt+左键,在左右两边点击的时候,实现了切换,或者使用从左向右滑动和从右向左滑动也可以实现切换: