碼上歡樂
  • 首頁
  • 榜單
  • 標簽
  • 關於
相關內容    簡體    繁體

時間和地域三級聯動選擇器(Android-PickerView-master)

本文轉載自   查看原文   2016-06-20 14:26   6319    Android

先附上下載和效果展示地址 https://github.com/saiwu-bigkoo/Android-PickerView

之后說一下程序依賴后會遇到的問題Error:(2, 0) Plugin with id 'com.github.dcendents.android-maven' not found.

解決辦法在Project下的build.gradle中添加兩句

classpath 'com.github.dcendents:android-maven-gradle-plugin:1.3'
classpath "com.jfrog.bintray.gradle:gradle-bintray-plugin:1.0"

之后附上一下使用代碼
package com.bigkoo.pickerviewdemo;
   
  import java.text.SimpleDateFormat;
  import java.util.ArrayList;
  import java.util.Calendar;
  import java.util.Date;
   
  import android.app.Activity;
  import android.os.Bundle;
  import android.view.View;
  import android.view.View.OnClickListener;
  import android.widget.TextView;
   
  import com.bigkoo.pickerview.OptionsPickerView;
  import com.bigkoo.pickerview.TimePickerView;
  import com.bigkoo.pickerviewdemo.bean.ProvinceBean;
   
   
  public class MainActivity extends Activity {
   
  private ArrayList<ProvinceBean> options1Items = new ArrayList<ProvinceBean>();
  private ArrayList<ArrayList<String>> options2Items = new ArrayList<ArrayList<String>>();
  private ArrayList<ArrayList<ArrayList<String>>> options3Items = new ArrayList<ArrayList<ArrayList<String>>>();
  private TextView tvTime, tvOptions;
  TimePickerView pvTime;
  OptionsPickerView pvOptions;
  View vMasker;
   
  @Override
  protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.activity_main);
  vMasker=findViewById(R.id.vMasker);
  tvTime=(TextView) findViewById(R.id.tvTime);
  tvOptions=(TextView) findViewById(R.id.tvOptions);
  //時間選擇器
  pvTime = new TimePickerView(this, TimePickerView.Type.YEAR_MONTH_DAY);
  //控制時間范圍
  // Calendar calendar = Calendar.getInstance();
  // pvTime.setRange(calendar.get(Calendar.YEAR) - 20, calendar.get(Calendar.YEAR));
  pvTime.setTime(new Date());
  pvTime.setCyclic(false);
  pvTime.setCancelable(true);
  //時間選擇后回調
  pvTime.setOnTimeSelectListener(new TimePickerView.OnTimeSelectListener() {
   
  @Override
  public void onTimeSelect(Date date) {
  tvTime.setText(getTime(date));
  }
  });
  //彈出時間選擇器
  tvTime.setOnClickListener(new OnClickListener() {
   
  @Override
  public void onClick(View v) {
  pvTime.show();
  }
  });
   
  //選項選擇器
  pvOptions = new OptionsPickerView(this);
   
  //選項1
  options1Items.add(new ProvinceBean(0,"廣東","廣東省,以嶺南東道、廣南東路得名","其他數據"));
  options1Items.add(new ProvinceBean(1,"湖南","湖南省地處中國中部、長江中游,因大部分區域處於洞庭湖以南而得名湖南","芒果TV"));
  options1Items.add(new ProvinceBean(3,"廣西","嗯~~",""));
   
  //選項2
  ArrayList<String> options2Items_01=new ArrayList<String>();
  options2Items_01.add("廣州");
  options2Items_01.add("佛山");
  options2Items_01.add("東莞");
  options2Items_01.add("陽江");
  options2Items_01.add("珠海");
  ArrayList<String> options2Items_02=new ArrayList<String>();
  options2Items_02.add("長沙");
  options2Items_02.add("岳陽");
  ArrayList<String> options2Items_03=new ArrayList<String>();
  options2Items_03.add("桂林");
  options2Items.add(options2Items_01);
  options2Items.add(options2Items_02);
  options2Items.add(options2Items_03);
   
  //選項3
  ArrayList<ArrayList<String>> options3Items_01 = new ArrayList<ArrayList<String>>();
  ArrayList<ArrayList<String>> options3Items_02 = new ArrayList<ArrayList<String>>();
  ArrayList<ArrayList<String>> options3Items_03 = new ArrayList<ArrayList<String>>();
  ArrayList<String> options3Items_01_01=new ArrayList<String>();
  options3Items_01_01.add("白雲");
  options3Items_01_01.add("天河");
  options3Items_01_01.add("海珠");
  options3Items_01_01.add("越秀");
  options3Items_01.add(options3Items_01_01);
  ArrayList<String> options3Items_01_02=new ArrayList<String>();
  options3Items_01_02.add("南海");
  options3Items_01_02.add("高明");
  options3Items_01_02.add("順德");
  options3Items_01_02.add("禪城");
  options3Items_01.add(options3Items_01_02);
  ArrayList<String> options3Items_01_03=new ArrayList<String>();
  options3Items_01_03.add("其他");
  options3Items_01_03.add("常平");
  options3Items_01_03.add("虎門");
  options3Items_01.add(options3Items_01_03);
  ArrayList<String> options3Items_01_04=new ArrayList<String>();
  options3Items_01_04.add("其他1");
  options3Items_01_04.add("其他2");
  options3Items_01_04.add("其他3");
  options3Items_01.add(options3Items_01_04);
  ArrayList<String> options3Items_01_05=new ArrayList<String>();
  options3Items_01_05.add("其他1");
  options3Items_01_05.add("其他2");
  options3Items_01_05.add("其他3");
  options3Items_01.add(options3Items_01_05);
   
  ArrayList<String> options3Items_02_01=new ArrayList<String>();
  options3Items_02_01.add("長沙長沙長沙長沙長沙長沙長沙長沙長沙1111111111");
  options3Items_02_01.add("長沙2");
  options3Items_02_01.add("長沙3");
  options3Items_02_01.add("長沙4");
  options3Items_02_01.add("長沙5");
  options3Items_02_01.add("長沙6");
  options3Items_02_01.add("長沙7");
  options3Items_02_01.add("長沙8");
  options3Items_02.add(options3Items_02_01);
  ArrayList<String> options3Items_02_02=new ArrayList<String>();
  options3Items_02_02.add("岳1");
  options3Items_02_02.add("岳2");
  options3Items_02_02.add("岳3");
  options3Items_02_02.add("岳4");
  options3Items_02_02.add("岳5");
  options3Items_02_02.add("岳6");
  options3Items_02_02.add("岳7");
  options3Items_02_02.add("岳8");
  options3Items_02_02.add("岳9");
  options3Items_02.add(options3Items_02_02);
  ArrayList<String> options3Items_03_01=new ArrayList<String>();
  options3Items_03_01.add("好山水");
  options3Items_03.add(options3Items_03_01);
   
  options3Items.add(options3Items_01);
  options3Items.add(options3Items_02);
  options3Items.add(options3Items_03);
   
  //三級聯動效果
  pvOptions.setPicker(options1Items, options2Items, options3Items, true);
  //設置選擇的三級單位
  // pwOptions.setLabels("省", "市", "區");
  pvOptions.setTitle("選擇城市");
  pvOptions.setCyclic(false, true, true);
  //設置默認選中的三級項目
  //監聽確定選擇按鈕
  pvOptions.setSelectOptions(1, 1, 1);
  pvOptions.setOnoptionsSelectListener(new OptionsPickerView.OnOptionsSelectListener() {
   
  @Override
  public void onOptionsSelect(int options1, int option2, int options3) {
  //返回的分別是三個級別的選中位置
  String tx = options1Items.get(options1).getPickerViewText()
  + options2Items.get(options1).get(option2)
  + options3Items.get(options1).get(option2).get(options3);
  tvOptions.setText(tx);
  vMasker.setVisibility(View.GONE);
  }
  });
  //點擊彈出選項選擇器
  tvOptions.setOnClickListener(new View.OnClickListener() {
   
  @Override
  public void onClick(View v) {
  pvOptions.show();
  }
  });
  }
   
  public static String getTime(Date date) {
  SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm"); //如果里面需要小時和分鍾就帶上HH:mm不需要就不用寫
  return format.format(date);
  }
   
  }

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



猜您在找 Swift3.0 三級聯動UIPickerView城市選擇器 html5手機移動端三級聯動城市選擇器 省市區三級聯動 pickerView 基於elementUI中級聯選擇器( el-cascader ),完成省市區三級聯動並回顯---更新 記錄 vant Picker 選擇器,實現三級聯動,傳對應省市區code值 記錄 vant Picker 選擇器,實現三級聯動,傳對應省市區code值 全國地區選擇(三級聯動) select選擇框三級聯動 1:MUI選擇器組件拋出“n.getSelectedItem is not a function”異常的解決辦法 2:mui三級聯動 3:移動端關閉虛擬鍵盤 Android 三級聯動選擇城市+后台服務加載數據庫
 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM