Skip to content

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

seastoneard/FancyCoverFlowApp

Repository files navigation

FancyCoverFlowApp

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);
 */

}



About

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

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages