Android高级控件二

262 阅读1分钟

image.png

世界是纷繁复杂的,很多事情我们虽然习以为常,但并不了解其真相,我们需要用一些理论来揭示事物运行的逻辑规律,推演命运发展的因果关系。

Spinner(下拉列表)

<Spinner
    android:id="@+id/spinner"
    android:layout_width="150dp"
    android:layout_height="30dp"
    android:gravity="center"
    android:dropDownVerticalOffset="10dp"
    android:popupBackground="#f00"
    android:spinnerMode="dialog" />

image.png

image.png 从图中我们可以看到Spinner分别用弹窗和下拉的方式来打开。这主要得益于属性的设置。

image.png

  • android:spinnerMode="dropdown" dropdown参数设置就是下拉的方式。dialog 参数设置就是弹窗的方式出现。
  • android:popupBackground="#f00" 设置下拉方式的背景颜色。
  • android:dropDownVerticalOffset="10dp" 设置下拉的时候显示的距离相隔多少;

image.png 通过图片可以明确看到显示的结果。

Spinner也是可以通过适配器来定义他的选项的

public class MainActivity7 extends AppCompatActivity {
    private List<String> list;
    private Spinner spinner;
    private ArrayAdapter<String> arrayAdapter;
    private TextView textView;


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main7);

        initView();

    }

    private void initView() {
        spinner=findViewById(R.id.spinner);
        textView=findViewById(R.id.textSpinner);
        list=new ArrayList<>();
        list.add("青铜");
        list.add("白银");
        list.add("黄金");
        list.add("铂金");
        list.add("砖石");
        list.add("星耀");
        list.add("王者");

        /**
         * 适配器
         * 参数1:上下文
         * 参数2:专属于Spinner的布局
         * 参数3:数据源list
         */
        arrayAdapter=new ArrayAdapter<>(this,android.R.layout.simple_spinner_item,list);
//        设置下拉查看资源
        arrayAdapter.setDropDownViewResource(androidx.appcompat.R.layout.support_simple_spinner_dropdown_item);
        spinner.setAdapter(arrayAdapter);

    }
}

要永远年轻,永远热情,永远不听话;要大笑,要做梦,要与众不同。人生是一场伟大的冒险。