在微调器中将图像设置为Gravity.Center

时间:2012-12-19 19:14:04

标签: java android xml android-layout android-spinner

我有一个带有图像作为项目的微调器,问题是它们被推到左边。我认为纺纱厂的一个常见问题。我之前已经解决了这个问题,但仅限于文本视图,而不是图像。如何将图像移动到下拉微调器菜单的中心?

这是我的自定义微调器xml:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 android:layout_width="wrap_content"
 android:layout_height="50dp"
 android:orientation="horizontal"
 android:gravity="center"
 android:layout_gravity="center"
 >

    <ImageView
     android:id="@+id/icon"
     android:layout_width="35dp"
     android:layout_height="35dp"
     android:scaleType="fitStart"
     android:gravity="center"
     android:layout_gravity="center"
     android:src="@drawable/icon"
     />

</LinearLayout>

我已尝试将其设置为以xml中的所有可能方式居中(如您所见),但无法使其正常工作..

我在java中试过这个:

        ...
        @Override
        public View getDropDownView(int position, View convertView,
                ViewGroup parent) {
            // TODO Auto-generated method stub

            ((ImageView) getCustomView(position, convertView, parent)).setGravity(Gravity.CENTER);

        }
      ...

但是我在setGravity上遇到错误说:方法setGravity(int)未定义类型ImageView

怎么做??

感谢

1 个答案:

答案 0 :(得分:1)

我认为你的问题是LinearLayout的宽度是wrap_content,这意味着它只会像图像一样宽。因此它居中。尝试设置layout_width =“match_parent”