中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Android日歷控件PickTime代碼實例

發布時間:2020-10-03 16:05:51 來源:腳本之家 閱讀:154 作者:手撕高達的村長 欄目:開發技術

最近做項目,需要設置用戶的生日,所以做這樣一個功能。

開始發覺自帶的DatePicker 很是不好用。

上代碼:

<DatePicker
       android:id="@+id/dpPicker"
       android:datePickerMode="spinner"
       android:calendarViewShown="false"
      android:layout_marginTop="150dp"
      android:spinnersShown="true"
      android:yearListSelectorColor = "@color/colorPrimaryDark"
       android:layout_width="match_parent"
       android:layout_height="wrap_content" />

初始化代碼:

DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd", Locale.CHINA);
    Calendar calendar = Calendar.getInstance(Locale.CHINA);

    datePicker = (DatePicker) findViewById(R.id.dpPicker);
    int year=calendar.get(Calendar.YEAR);
    int monthOfYear=calendar.get(Calendar.MONTH);
    int dayOfMonth=calendar.get(Calendar.DAY_OF_MONTH);
    datePicker.init(year, monthOfYear, dayOfMonth, new DatePicker.OnDateChangedListener() {

           @Override
       public void onDateChanged(DatePicker view, int year,
           int monthOfYear, int dayOfMonth) {
                 // 獲取一個日歷對象,并初始化為當前選中的時間
                 Calendar calendar = Calendar.getInstance();
                 calendar.set(year, monthOfYear, dayOfMonth);
                 SimpleDateFormat format = new SimpleDateFormat(
                         "yyyy年MM月dd日 HH:mm");
                 Toast.makeText(MainActivity.this,
                         format.format(calendar.getTime()), Toast.LENGTH_SHORT)
                     .show();
               }
     });

結果效果如此:

Android日歷控件PickTime代碼實例

android:datePickerMode="spinner"

這個屬性會切換為日歷選擇狀態。

Android日歷控件PickTime代碼實例

還容易出現英文這種鬼東西,于是不在研究,直接找插件去。

于是發現PickTime 很好用的,來說下使用方法:

//日期選擇控件
  implementation 'com.github.codbking:PickTime:v1.0.1'
  //item控件
  implementation 'com.github.codbking:AllItemView:v1.0.0'

然后是調用代碼:

package controller.hzl.com.timetest;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.DatePicker;
import android.widget.TimePicker;
import android.widget.Toast;

import com.codbking.view.ItemView;
import com.codbking.widget.DatePickDialog;
import com.codbking.widget.bean.DateType;

import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Locale;

public class MainActivity extends AppCompatActivity implements View.OnClickListener{

  private DatePicker datePicker;
   private TimePicker timePicker;

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

    ItemView xx = findViewById(R.id.item4);
    xx.setOnClickListener(this);

    DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd", Locale.CHINA);
    Calendar calendar = Calendar.getInstance(Locale.CHINA);

    datePicker = (DatePicker) findViewById(R.id.dpPicker);
    int year=calendar.get(Calendar.YEAR);
    int monthOfYear=calendar.get(Calendar.MONTH);
    int dayOfMonth=calendar.get(Calendar.DAY_OF_MONTH);
    datePicker.init(year, monthOfYear, dayOfMonth, new DatePicker.OnDateChangedListener() {

           @Override
       public void onDateChanged(DatePicker view, int year,
           int monthOfYear, int dayOfMonth) {
                 // 獲取一個日歷對象,并初始化為當前選中的時間
                 Calendar calendar = Calendar.getInstance();
                 calendar.set(year, monthOfYear, dayOfMonth);
                 SimpleDateFormat format = new SimpleDateFormat(
                         "yyyy年MM月dd日 HH:mm");
                 Toast.makeText(MainActivity.this,
                         format.format(calendar.getTime()), Toast.LENGTH_SHORT)
                     .show();
               }
     });

  }

  private void showDatePickDialog(DateType type) {
    DatePickDialog dialog = new DatePickDialog(this);
    //設置上下年分限制
    dialog.setYearLimt(5);
    //設置標題
    dialog.setTitle("選擇時間");
    //設置類型
    dialog.setType(type);
    //設置消息體的顯示格式,日期格式
    dialog.setMessageFormat("yyyy-MM-dd");
    //設置選擇回調
    dialog.setOnChangeLisener(null);
    //設置點擊確定按鈕回調
    dialog.setOnSureLisener(null);
    dialog.show();
  }

  @Override
  public void onClick(View view) {
    switch (view.getId()) {
      case R.id.item4:
        showDatePickDialog(DateType.TYPE_YMD);
        break;

    }
  }
}

效果如圖:

Android日歷控件PickTime代碼實例

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

海城市| 锡林郭勒盟| 昌宁县| 桃江县| 石景山区| 高碑店市| 龙泉市| 锡林郭勒盟| 巴彦县| 科尔| 剑河县| 茌平县| 和龙市| 顺昌县| 新平| 霞浦县| 沐川县| 永定县| 弥勒县| 浦城县| 平南县| 石楼县| 许昌市| 武功县| 阜平县| 卢湾区| 麟游县| 彭阳县| 贡山| 志丹县| 兴海县| 大厂| 乐东| 开江县| 确山县| 阳信县| 肥西县| 梅河口市| 嘉兴市| 花莲市| 禄劝|