Android画廊效果

来源:互联网 发布:谷歌镜像 知乎 编辑:程序博客网 时间:2024/05/21 03:58

Android画廊效果



前言:Gallery是一个内部元素控件,可以水平滚动,并且可以把当前选择的子元素定位在它中心的布局组件;画廊Gallery一般用来显示可左右移动图片的列表(具体请看实例)。



效果:




开发环境:AndroidStudio2.2.1+gradle-2.14.1



涉及知识:

1.自定义控件
2.Gallery使用等

部分代码:

public class MainActivity extends AppCompatActivity {    //适配器    private FancyCoverFlowSampleAdapter adapter = null;    private FancyCoverFlow fancyCoverFlow;    private List<String> list = new ArrayList<>();    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        initLayout();        initData();    }    private void initLayout() {        fancyCoverFlow = (FancyCoverFlow) findViewById(R.id.main_gallery);        fancyCoverFlow.dp2px();// child间距        adapter = new FancyCoverFlowSampleAdapter(this, list);        fancyCoverFlow.setAdapter(adapter);        //点击事件监听        fancyCoverFlow.setOnItemClickListener(new AdapterView.OnItemClickListener() {            @Override            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {                Toast.makeText(MainActivity.this, "ItemClick-------->" + position, Toast.LENGTH_SHORT).show();            }        });    }    private void initData() {        for (int i = 0; i < 9; i++) {            list.add("" + i);        }        adapter.notifyDataSetChanged();        fancyCoverFlow.setSelection(1);//显示第几个    }    /**     * FancyCoverFlow属性使用     *     * // 未选中的透明度     * this.fancyCoverFlow.setUnselectedAlpha(0.0f);     * // 未选中的饱和度     * this.fancyCoverFlow.setUnselectedSaturation(0.0f);     * // 未选中的比例     * this.fancyCoverFlow.setUnselectedScale(0.8f);     * // child间距     * this.fancyCoverFlow.setSpacing(-60);     * // 旋转度数     * this.fancyCoverFlow.setMaxRotation(0);     * // 非选中的重心偏移,负的向上     * this.fancyCoverFlow.setScaleDownGravity(-1f);     * // 作用距离     * this.fancyCoverFlow.setActionDistance(FancyCoverFlow.ACTION_DISTANCE_AUTO);     */    }


源码下载...


原创粉丝点击