我有一个viewflipper它有图像,我的问题是图像(图像视图)不居中。我解决了它几个小时,不幸的是没有工作。我无法在imageview中找到setGravity或重力。这是我的工作不代码:ViewFlipper - 如何中心我的ImageView
我的布局
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<ViewFlipper android:id="@+id/flipper"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_gravity="center"
android:scaleType="centerInside"
android:background="#000000"
>
</ViewFlipper>
在我的src文件:
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState){
View view = inflater.inflate(R.layout.slider_image, container, false);
viewFlipper = (ViewFlipper)view. findViewById(R.id.flipper);
desc = (TextView)view.findViewById(R.id.textDesc);
desc.setText("Lorem ipsum dolor sit amet, consectetur adipiscing elit. Curabitur elementum " +
"libero dapibus mi semper accumsan. Vestibulum tortor diam, " +
"imperdiet in consectetur faucibus, vulputate eget turpis." +
" Nullam nec aliquet arcu. Nunc pretium nulla non nulla pulvinar " +
"ac interdum risus dictum. Morbi viverra condimentum elit sit amet lobortis.");
desc.setMovementMethod(new ScrollingMovementMethod());
for(int i=0;i<mThumbIds.length;i++)
{
setFlipperImage(mThumbIds[i]);
}
viewFlipper.setAutoStart(true);
viewFlipper.setFlipInterval(8000);
viewFlipper.setPadding(20, 10, 20,0);
viewFlipper.setInAnimation(AnimationUtils.loadAnimation(getActivity().getApplicationContext(), R.anim.view_right_in));
viewFlipper.setOutAnimation(AnimationUtils.loadAnimation(getActivity().getApplicationContext(),R.anim.view_right_out));
viewFlipper.startFlipping();
viewFlipper.setOnTouchListener(new OnTouchListener(){
public boolean onTouch(View arg0, MotionEvent arg1) {
switch (arg1.getAction()){
case MotionEvent.ACTION_DOWN:{
downXValue = arg1.getX();
break;
}
case MotionEvent.ACTION_UP:{
float currentX = arg1.getX();
if (downXValue < currentX)
{
viewFlipper.setInAnimation(AnimationUtils.loadAnimation(getActivity().getApplicationContext(), R.anim.view_right_in));
viewFlipper.setOutAnimation(AnimationUtils.loadAnimation(getActivity().getApplicationContext(),R.anim.view_right_out));
viewFlipper.showPrevious();
}
if (downXValue > currentX)
{
viewFlipper.setInAnimation(AnimationUtils.loadAnimation(getActivity().getApplicationContext(),R.anim.view_left_in));
viewFlipper.setOutAnimation(AnimationUtils.loadAnimation(getActivity().getApplicationContext(),R.anim.view_left_out));
viewFlipper.showNext();
}
break;
}
}
return true;
}
});
super.setMenuVisibility (true);
super.setHasOptionsMenu(true);
return view;
}
我setflipper功能:
private void setFlipperImage(int res) {
ImageView image = new ImageView(getActivity().getApplicationContext());
image.setBackgroundResource(res);
@SuppressWarnings("deprecation")
LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams( LinearLayout.LayoutParams.FILL_PARENT, LinearLayout.LayoutParams.WRAP_CONTENT);
layoutParams.gravity = Gravity.CENTER_HORIZONTAL;
image.setLayoutParams(layoutParams);
image.setMaxHeight(350);
image.setMaxWidth(600);
image.setAdjustViewBounds(true);
image.getLayoutParams().height = 350;
image.getLayoutParams().width = 350;
viewFlipper.addView(image);
}
任何帮助是多少赞赏。
您可以加入的图像这个问题看起来像什么? – ThomasW