使用水平的scroolview …
来源:互联网 发布:光猫端口1.2同时连接 编辑:程序博客网 时间:2024/05/10 15:17
Activity类
[java] viewplaincopy
- package
com.example.viewgroupdemo; -
- import
java.util.HashMap; - import
java.util.Map; -
- import
android.app.Activity; - import
android.content.BroadcastReceiver; - import
android.content.Context; - import
android.content.Intent; - import
android.content.IntentFilter; - import
android.os.Bundle; - import
android.view.View; - import
android.view.ViewGroup.LayoutParams; - import
android.widget.ImageSwitcher; - import
android.widget.ImageView; - import
android.widget.ViewSwitcher.ViewFactory; -
- import
com.example.hsv.AppConstant; - import
com.example.hsv.HSVAdapter; - import
com.example.hsv.HSVLayout; -
-
- public
class MainActivity extendsActivity implementsViewFactory { -
-
public ImageSwitcher null;imageSwitcher = // 图片切换 -
private HSVLayout null;movieLayout = -
private HSVAdapter null;adapter = -
private IntentFilter null;intentFilter = -
private BroadcastReceiver null;receiver = -
private int nCount 0;= -
// pic in the drawable -
private Integer[] images = { R.drawable.pre0, R.drawable.pre1, -
R.drawable.pre2, R.drawable.pre3, R.drawable.pre4, R.drawable.pre5, -
R.drawable.pre6, R.drawable.pre7, R.drawable.pre8, R.drawable.pre9, -
R.drawable.pre10 }; -
-
@Override -
public void onCreate(Bundle savedInstanceState) { -
super.onCreate(savedInstanceState); -
setContentView(R.layout.main); -
imageSwitcher = (ImageSwitcher) findViewById(R.id.image_switcher); -
imageSwitcher.setFactory(this); -
movieLayout = (HSVLayout) findViewById(R.id.movieLayout); -
adapter = new HSVAdapter( this); -
for ( inti 0;= i < images.length; i++) { -
Map map = new HashMap(); -
map.put("image", images[i]); -
// map.put("image", getResources().getDrawable(images[i])); -
map.put("index", (i+ 1)); -
adapter.addObject(map); -
} -
movieLayout.setAdapter(adapter); -
// 设置当前显示的图片 -
imageSwitcher.setImageResource(images[nCount]); -
} -
-
@Override -
protected void onPause() { -
// TODO Auto-generated method stub -
super.onPause(); -
unregisterReceiver(receiver); -
} -
-
@Override -
protected void onResume() { -
// TODO Auto-generated method stub -
super.onResume(); -
if (receiver null)== { -
receiver = new UpdateImageReceiver(); -
} -
registerReceiver(receiver, getIntentFilter()); -
} -
-
-
private IntentFilter getIntentFilter() { -
if (intentFilter null)== { -
intentFilter = new IntentFilter(); -
intentFilter.addAction(AppConstant.UPDATE_IMAGE_ACTION); -
} -
return intentFilter; -
} -
-
-
@Override -
public View makeView() { -
// TODO Auto-generated method stub -
ImageView imageView = new ImageView(getApplicationContext()); -
imageView.setBackgroundColor(0xFF000000); -
imageView.setScaleType(ImageView.ScaleType.FIT_CENTER); -
imageView.setLayoutParams(new ImageSwitcher.LayoutParams( -
LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT)); -
return imageView; -
} -
-
class UpdateImageReceiver extendsBroadcastReceiver{ -
-
@Override -
public void onReceive(Context context, Intent intent) { -
// TODO Auto-generated method stub -
if(intent.getAction().equals(AppConstant.UPDATE_IMAGE_ACTION)){ -
int index "index",= intent.getIntExtra( Integer.MAX_VALUE); -
imageSwitcher.setImageResource(images[index-1]); -
System.out.println("UpdateImageReceiver----" + index); -
} -
} -
-
} - }
自定义HSVLayout.java
[java] viewplaincopy
- package
com.example.hsv; -
- import
java.util.Map; -
- import
android.content.Context; - import
android.content.Intent; - import
android.util.AttributeSet; - import
android.view.View; - import
android.widget.LinearLayout; - import
android.widget.Toast; -
- public
class HSVLayout extendsLinearLayout { -
-
private HSVAdapter adapter; -
private Context context; -
-
public HSVLayout(Context context, AttributeSet attrs) { -
super(context, attrs); -
this.context = context; -
} -
-
public void setAdapter(HSVAdapter adapter) { -
this.adapter = adapter; -
for ( inti 0;= i < adapter.getCount(); i++) { -
final Map map = adapter.getItem(i); -
View view = adapter.getView(i, null, null); -
view.setPadding(10, 0, 10, 0); -
// 为视图设定点击监听器 -
view.setOnClickListener(new OnClickListener() { -
@Override -
public void onClick(View v) { -
Toast.makeText(context, "您选择了" + "index"),map.get( -
Toast.LENGTH_SHORT).show(); -
Intent intent = new Intent(); -
intent.setAction(AppConstant.UPDATE_IMAGE_ACTION); -
intent.putExtra("index", (Integer)map.get( "index")); -
context.sendBroadcast(intent); -
-
} -
}); -
this.setOrientation(HORIZONTAL); -
this.addView(view, new LinearLayout.LayoutParams( -
300, LayoutParams.WRAP_CONTENT)); -
} -
} - }
[java] viewplaincopy
- package
com.example.hsv; -
- import
java.util.ArrayList; - import
java.util.List; - import
java.util.Map; -
- import
com.example.viewgroupdemo.R; -
- import
android.content.Context; - import
android.view.LayoutInflater; - import
android.view.View; - import
android.view.ViewGroup; - import
android.widget.BaseAdapter; - import
android.widget.ImageView; -
-
- public
class HSVAdapter extendsBaseAdapter { -
-
private List -
private Context context; -
public HSVAdapter(Context context){ -
this.context=context; -
this.list=new ArrayList -
} -
@Override -
public int getCount() { -
return list.size(); -
} -
-
@Override -
public Map intgetItem( location) { -
return list.get(location); -
} -
-
@Override -
public long getItemId( intarg0) { -
return arg0; -
} -
-
public void addObject(Map map){ -
list.add(map); -
notifyDataSetChanged(); -
} -
@Override -
public View intgetView( location, View arg1, ViewGroup arg2) { -
View view = LayoutInflater.from(context).inflate(R.layout.movie,null); -
ImageView image=(ImageView)view.findViewById(R.id.movie_image); -
Map map=getItem(location); //获取当前的Item -
//image.setBackground((Drawable)map.get("image")); -
image.setBackgroundResource((Integer) map.get("image")); -
return view; -
} -
- }
main.xml
[html] viewplaincopy
0 0
- 使用水平的scroolview …
- 使用BBED修改SCN …
- html5 css 的 水平和垂直居中
- JFreeChart的使用 java …
- 使用 grep 的 -o&n…
- ScroolView的使用
- 高德地图 MAMapKit 的使用
- ZBar的使用
- jquery easyui datebox 的使用 .
- Join语句的on 与 select xxx in…
- HDOJ 1407 测试你是否和LTC水平…
- 使用 Oracle Universal Installer …
- 使用 Tortoise SVN 创建 Ext…
- String 的 split …
- 我们正在忘却的传统文化 …
- buildbot + bazaar + mysql的测试…
- 图论: 经典的邻接矩阵 + dijkstra …
- MKMapView的使用 和 uitableview的…
- android如何查看cpu的占用率和内存泄漏
- android 四舍五入
- 一个apk的activity 跳…
- android 实现图片加水印
- 我的博客今天2岁106天了,我领取了…
- 使用水平的scroolview …
- Android客户端调用优酷视频播放器…
- document.ready和onload的区别
- listview嵌在scrollview里 只…
- UIButton的imageEdgeInsets和titleEdgeInsets
- Android edittext&nbsp…
- IT程序员 我们究竟什么…
- elasticsearch:用Curator辅助Marvel,实现自动删除marvel索引
- 239. Sliding Window Maximum&滑动窗口的最大值
原创粉丝点击
热门IT博客
热门问题
老师的惩罚
人脸识别
我在镇武司摸鱼那些年
重生之率土为王
我在大康的咸鱼生活
盘龙之生命进化
天生仙种
凡人之先天五行
春回大明朝
姑娘不必设防,我是瞎子
别墅玻纤瓦
别墅网络
深圳高典别墅设计网
别墅装修网有哪些
自建别墅网
别墅装饰网
中国别墅网
别墅装修网
e墅网
豪宅别墅网
木屋别墅网
主人花万元为爱犬建别墅
别墅院子
别墅的大门
别墅木大门图片
别墅大门加工
别墅大门设计图片
别墅门口图片
别墅外墙装修图片
欧式豪华别墅外观图片
欧式别墅外观
农村一层别墅效果图
乡村一层小别墅图片
农村单层小别墅图片
自建一层别墅效果图
农村一层别墅
碧桂园豪园别墅
别墅门前设计
别墅不锈钢大门
别墅大门样式
别墅庭院大门图片
别墅大门设计
不锈钢别墅门
别墅庭院电动门
别墅双开门
别墅门价格
定制别墅门
别墅门图片
别墅进户门图片
别墅庭院门图片
别墅院子门图片