Android基础TOP6_3:Gally和ImageSwitcher实现画廊
2024-09-06 12:17:49
结构:
Activity:
<LinearLayout 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"
android:orientation="vertical"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.example.top6_3.MainActivity" >
<Gallery
android:id="@+id/gly"
android:layout_height="60dp"
android:layout_width="fill_parent"
android:animationDuration=""
android:gravity="center_vertical"
android:spacing="20dp"
android:unselectedAlpha="0.5"
android:background="#55000000"
/>
<ImageSwitcher
android:paddingTop="10dp"
android:id="@+id/is"
android:layout_width="wrap_content"
android:layout_height="match_parent"></ImageSwitcher> </LinearLayout>
JAVA:
MainActivity类:
package com.example.top6_3; import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.animation.Animation;
import android.view.animation.AnimationUtils;
import android.widget.Gallery.LayoutParams;
import android.widget.AdapterView;
import android.widget.Gallery;
import android.widget.ImageSwitcher;
import android.widget.ImageView;
import android.widget.ViewSwitcher.ViewFactory; public class MainActivity extends Activity {
private Gallery gal;
private ImageView iv;
private ImageAdapter adapter;
private ImageSwitcher is;
private static final int[] imgslds={
R.drawable.bjl,
R.drawable.dfhgc,
R.drawable.fg,
R.drawable.gj
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
is=(ImageSwitcher) findViewById(R.id.is);
is.setFactory(new ViewFactory() { @Override
public View makeView() {
// TODO Auto-generated method stub
ImageView i=new ImageView(getApplicationContext());
//i.setBackgroundColor(0Xff000000);
i.setScaleType(ImageView.ScaleType.FIT_CENTER);
i.setLayoutParams(new ImageSwitcher.LayoutParams(LayoutParams.MATCH_PARENT,
LayoutParams.MATCH_PARENT));
return i;
}
});
is.setInAnimation(AnimationUtils.loadAnimation(this, android.R.anim.fade_in));
is.setOutAnimation(AnimationUtils.loadAnimation(this, android.R.anim.fade_out));
gal=(Gallery) findViewById(R.id.gly);
adapter=new ImageAdapter(this);
gal.setAdapter(adapter);
gal.setOnItemSelectedListener(gaILidstener);
}
private Gallery.OnItemSelectedListener gaILidstener=new Gallery.OnItemSelectedListener() { @Override
public void onItemSelected(AdapterView<?> parent, View view,
int position, long id) {
// TODO Auto-generated method stub
is.setImageResource(imgslds[position]);
} @Override
public void onNothingSelected(AdapterView<?> parent) {
// TODO Auto-generated method stub } };
}
ImageAdapter类:
package com.example.top6_3; import android.R.integer;
import android.content.Context;
import android.view.Gravity;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.Gallery;
import android.widget.ImageView; public class ImageAdapter extends BaseAdapter {
private Context context; private static final int[] imgslds={
R.drawable.bjl,
R.drawable.dfhgc,
R.drawable.fg,
R.drawable.gj
};
public ImageAdapter(Context c){
context=c; }
public int getCount() {
// TODO Auto-generated method stub
//
return imgslds.length; } @Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return position;
} @Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return position;
} @Override
public View getView(int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
ImageView iv=new ImageView(context);
iv.setImageResource(imgslds[position]);
iv.setScaleType(ImageView.ScaleType.FIT_CENTER);
iv.setLayoutParams(new Gallery.LayoutParams(,));
//iv.setBackgroundResource(R.drawable.bjl);
return iv; } }
效果图:
最新文章
- xamarin MasterDetailPage点击Master时卡顿现象
- WinForm 与WPF 窗体之间的想到调用
- Java关键字——throws和throw
- PostgreSQL数据库中跨库访问解决方案
- QSerialPort
- CSS的三种手段让元素脱离标准本文档流——浮动、绝对定位、固定定位
- 【javascript】回调函数
- POJ - 3984 bfs [kuangbin带你飞]专题一
- CoreAnimation注意事项
- Mix 导航
- My操作小技巧
- 2018-2019-20175307实验一《Java开发环境的熟悉》实验报告
- 弹性布局(Flex布局)整理
- SimInfo获取(MCC, MNC, PLMN)
- HDU 6038 17多校1 Function(找循环节/环)
- nodejs使用案例-mysql操作
- PEP_2007相关问题记录
- 【Linq】常用语法汇总
- 添加静态路由 route add -host 子网掩码 -- 在线解析
- Codeforces 291 E Tree-String Problem AC自动机
热门文章
- [VueJS + Typescript] Decouple Dependencies Using IoC Containers in Vue with TypeScript and InversifyJS
- 设计并实现一个LRU Cache
- 图像处理之基础---滤波器之高斯低通滤波器3c代码实现yuv,rgb
- [mac]WireShark检測不到网卡怎么办?
- 为JMenu中的JPopupMenu定制透明背景
- CPU卡的读写【转】
- [loj6089]小Y的背包计数问题
- 移动前端第二弹:善用meta
- 3-1 todolist功能开发
- Linux的文件搜索命令(locate ,find,grep,find命令和)