Android 基础控件(二)

版权声明:本文为博主原创文章,转载请注明出处。 https://blog.csdn.net/u011619283/article/details/82793889

##7.ImageView
ImageView直接继承View,也是非常常用的一种视图控件。

示例代码:

<ImageView
    android:id="@+id/testImage"
    android:layout_width="100dp"
    android:layout_height="100dp"
    android:src="@mipmap/ic_launcher"
    android:scaleType="center"/>

ImageView最常用的属性是scaleType,可以设置图片的缩放或裁剪模式。

至于各个值的作用,可以参考如下这样图:
在这里插入图片描述

另外,如果我们要在代码中设置图片,有多种方式,除了可以设置工程内的图片,还可以设置网络图片。

imageView.setImageResource(resId);
//下载网络图片后,将图片转换为位图数据显示
imageView.setImageBitmap(bm);
imageView.setImageDrawable(drawable);

8.ProgressBar

Android中的进度条有多种样式,有无进度的大小圆环形、有带进度的长条形、有可拖动进度的进度条形、还有用作评价的星星进度条。

小圆进度条

小圆进度条,也可以当做网络请求时的loading用。

<ProgressBar
    android:id="@+id/nomalProgress"
    style="?android:attr/progressBarStyleSmall"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" />

反向小圆进度条

同上,只是旋转反向是逆时针旋转。

<ProgressBar
        android:id="@+id/nomalProgress"
        style="?android:attr/progressBarStyleSmallInverse"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />

大圆进度条

大圆进度条与小圆进度条一样,只是更大一些罢了。

<ProgressBar
        android:id="@+id/nomalProgress"
        style="?android:attr/progressBarStyleLarge"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />

反向大圆进度条

<ProgressBar
        android:id="@+id/nomalProgress"
        style="?android:attr/progressBarStyleLargeInverse"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />

横向带进度的进度条

<ProgressBar
        android:id="@+id/nomalProgress"
        style="?android:attr/progressBarStyleHorizontal"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:max="200"
        android:progress="50"/>

还有这种写法:

<ProgressBar
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        style="@style/Base.Widget.AppCompat.ProgressBar.Horizontal"
        android:max="200"
        android:progress="50"/>

可拖动的进度条
SeekBar,可以拖动的进度条,一般用做音乐的进度条等。

<SeekBar
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:max="200"
        android:progress="50"/>

星星进度条

RatingBar 星星进度条一般可用作评价时,最小可选单位是0.3颗星。
用stepSize来设置,一般设置0.5或者1。

<RatingBar
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:numStars="5"
        android:rating="1"
        android:stepSize="1"/>

9.DatePicker/TimePicker

日期选择器

<DatePicker
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />

初始化日期选择器的日期

DatePicker datePicker = (DatePicker)findViewById(R.id.datePicker);
        Calendar calendar = Calendar.getInstance();
        int year = calendar.get(Calendar.YEAR);
        int month = calendar.get(Calendar.MONTH);
        int day = calendar.get(Calendar.DAY_OF_MONTH);
        // 初始化日期
        datePicker.init(year, month, day, this);
        
    @Override
    public void onDateChanged(DatePicker datePicker, int i, int i1, int i2) {
        Log.e("MainActivity", i + "#" + i1 + "#" + i2);
    }

时间选择器

 <TimePicker
        android:layout_width="wrap_content"
        android:layout_height="wrap_content">
</TimePicker>

代码设置时间

TimePicker timePicker = (TimePicker)findViewById(R.id.content_timePicker);
timePicker.setIs24HourView(true);
timePicker.setOnTimeChangedListener(this);
        
    @Override
    public void onTimeChanged(TimePicker timePicker, int i, int i1) {
        Log.e("MainActivity", i + ":" + i1);
    }

猜你喜欢

转载自blog.csdn.net/u011619283/article/details/82793889