Android入门之ImageSwitcher(纯java)
来源:互联网 发布:软件开发项目管理 编辑:程序博客网 时间:2024/06/05 11:51
import android.app.Activity;import android.os.Bundle;import android.view.View;import android.view.Window;import android.view.View.OnClickListener;import android.widget.*;import android.widget.ImageView.ScaleType;import android.widget.ViewSwitcher.ViewFactory;public class ImageSwitcherTest extends Activity {private ImageSwitcherTest ist=this;//ist private LinearLayout mainLayout=null;//定义一个线性布局,主布局private ImageSwitcher is=null;//定义图片切换控件private RelativeLayout layout=null;//定义一个相对布局,用于盛放两个按钮private TextView tv=null;//定义一个文本private Button preButton=null;//按钮,上一张private Button nextButton=null;//按钮,下一张private int[] imageList={ R.drawable.p1,R.drawable.p2,R.drawable.p3,R.drawable.p4};//图片资源数组private int index=0;//图片索引 public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_NO_TITLE);//隐藏标题 mainLayout_init(); setContentView(mainLayout); } /*mianLayout初始化*/ void mainLayout_init(){ mainLayout=new LinearLayout(this); LinearLayout.LayoutParams lp=new LinearLayout.LayoutParams(-1,-1); mainLayout.setLayoutParams(lp); mainLayout.setOrientation(LinearLayout.VERTICAL); is_init(); mainLayout.addView(is); layout_init(); mainLayout.addView(layout); } /*is初始化*/ void is_init(){ is=new ImageSwitcher(this); LinearLayout.LayoutParams lp=new LinearLayout.LayoutParams(-1,-2); is.setLayoutParams(lp); is.setFactory(new ViewFactory(){ /* * 此处ViewFacktroy是一个接口,类似于OnClickeLisnter之类的 * 我们可以新建一个ViewFactroy,也可以让Activity implements ViewFactory */public View makeView() {ImageView iv=new ImageView(ist);iv.setScaleType(ScaleType.FIT_CENTER);iv.setLayoutParams(new ImageSwitcher.LayoutParams(-1,-1));return iv;} }); is.setImageResource(imageList[index]); } /*layout初始化*/ void layout_init(){ layout=new RelativeLayout(this); RelativeLayout.LayoutParams lp=new RelativeLayout.LayoutParams(-1,-2); layout.setLayoutParams(lp); tv_init(); layout.addView(tv); preButton_init(); layout.addView(preButton); nextButton_init(); layout.addView(nextButton); } /*tv初始化*/ void tv_init(){ tv=new TextView(this); RelativeLayout.LayoutParams lp=new RelativeLayout.LayoutParams(-2,-2); lp.addRule(RelativeLayout.CENTER_HORIZONTAL); tv.setLayoutParams(lp); tv.setText(String.valueOf(index+1)+"/4"); } /*preButton初始化*/ void preButton_init(){ preButton=new Button(this); RelativeLayout.LayoutParams lp=new RelativeLayout.LayoutParams(-2,-2); lp.addRule(RelativeLayout.ALIGN_PARENT_LEFT); preButton.setLayoutParams(lp); preButton.setText("上一张"); preButton.setEnabled(false); preButton.setOnClickListener(new OnClickListener(){public void onClick(View v) {if(index==3){nextButton.setEnabled(true);}if(index>0){index--;is.setImageResource(imageList[index]);if(index==0){preButton.setEnabled(false);}}tv.setText(String.valueOf(index+1)+"/4");} }); } /*nextButton初始化*/ void nextButton_init(){ nextButton=new Button(this); RelativeLayout.LayoutParams lp=new RelativeLayout.LayoutParams(-2,-2); lp.addRule(RelativeLayout.ALIGN_PARENT_RIGHT); nextButton.setLayoutParams(lp); nextButton.setText("下一张"); nextButton.setOnClickListener(new OnClickListener(){public void onClick(View v) {if(index==0){preButton.setEnabled(true);}if(index<3){index++;is.setImageResource(imageList[index]);if(index==3){nextButton.setEnabled(false);}}tv.setText(String.valueOf(index+1)+"/4");} }); }}
- Android入门之ImageSwitcher(纯java)
- Android入门第十三篇之Gallery + ImageSwitcher
- Android入门第十三篇之Gallery + ImageSwitcher
- Android入门第十三篇之Gallery + ImageSwitcher
- Android入门第十三篇之Gallery + ImageSwitcher
- Android入门第十三篇之Gallery + ImageSwitcher .
- Android入门第十三篇之Gallery + ImageSwitcher
- Android入门第十三篇之Gallery + ImageSwitcher
- Android入门之TextView(纯java)
- Android入门之EditText(纯java)
- Android入门之RadioGroup(纯java)
- Android入门之Spinner(纯java)
- Android入门之AutoCompleteTextView(纯java)
- Android入门之DatePicker(纯java)
- Android入门之TimePicker(纯java)
- Android入门之ScrollView(纯java)
- Android入门之ProgressBar(纯java)
- Android入门之SeekBar(纯java)
- Windows基本的数据类型
- 搭建Silverlight开发环境的几个要点
- 转义字符\b和\r的一点说明
- ie下双倍margin的处理方法
- Nginx 负载均衡配置实例
- Android入门之ImageSwitcher(纯java)
- Delphi 的接口机制——接口操作的编译器实现过程(1)
- QEvent类参考
- TCP/IP和网络通信(TCP协议编程)
- Linux 的多线程编程的高效开发经验
- 解决头文件相互包含问题的方法
- QPaintDevice类参考
- Latex中文简历模板
- Oracle 培训笔记 9.11 主动维护