Browse Source

筛选时间,增加自定义时间选择界面

developer
lh 8 years ago
parent
commit
e3fcadfb2f
5 changed files with 173 additions and 4 deletions
  1. +71
    -0
      app/src/main/java/com/qhclh/ytzh/ui/CalendarDialogFragment.java
  2. +58
    -0
      app/src/main/java/com/qhclh/ytzh/utils/DateTimeUtil.java
  3. +16
    -1
      app/src/main/java/com/qhclh/ytzh/work/carsmannage/CarsManageActivity.java
  4. +3
    -3
      app/src/main/res/layout/act_carsmanage.xml
  5. +25
    -0
      app/src/main/res/layout/calendar_dialog_basic.xml

+ 71
- 0
app/src/main/java/com/qhclh/ytzh/ui/CalendarDialogFragment.java View File

@ -0,0 +1,71 @@
package com.qhclh.ytzh.ui;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.v4.app.DialogFragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.view.Window;
import com.prolificinteractive.materialcalendarview.CalendarDay;
import com.prolificinteractive.materialcalendarview.MaterialCalendarView;
import com.prolificinteractive.materialcalendarview.OnDateSelectedListener;
import com.qhclh.ytzh.R;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
/**
* Created by luanhui on 2016/7/5.
*/
public class CalendarDialogFragment extends DialogFragment implements OnDateSelectedListener {
// private TextView textView;
private static final DateFormat FORMATTER = SimpleDateFormat.getDateInstance();
public interface CalendarClickListener
{
void onStartCalendarClick(Date date);
void onEndCalendarClick(Date date);
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
//去掉标题
getDialog().requestWindowFeature(Window.FEATURE_NO_TITLE);
return inflater.inflate(R.layout.calendar_dialog_basic, container, false);
}
@Override
public void onViewCreated(View view, Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
// textView = (TextView) view.findViewById(R.id.textView);
MaterialCalendarView widget = (MaterialCalendarView) view.findViewById(R.id.calendarView);
widget.setOnDateChangedListener(this);
}
@Override
public void onDateSelected(@NonNull MaterialCalendarView widget, @NonNull CalendarDay date, boolean selected) {
// textView.setText(FORMATTER.format(date.getDate()));
CalendarClickListener listener = (CalendarClickListener) getActivity();
String tag=this.getTag();
if(tag.equals("end"))
{
listener.onEndCalendarClick(date.getDate());
}
else{
listener.onStartCalendarClick(date.getDate());
}
this.dismiss();
}
}

+ 58
- 0
app/src/main/java/com/qhclh/ytzh/utils/DateTimeUtil.java View File

@ -69,4 +69,62 @@ public final class DateTimeUtil {
return SafeParseDate(FormatDate(time));
}
public static String getYMD()
{
SimpleDateFormat formatter = new SimpleDateFormat ("yyyy年MM月dd日");
Date curDate = new Date(System.currentTimeMillis());//获取当前时间
String str = formatter.format(curDate);
return str;
}
public static String getYMD(Date string)
{
SimpleDateFormat formatter = new SimpleDateFormat ("yyyy-MM-dd");
String str = formatter.format(string);
return str;
}
public static String getYMD2(Date string)
{
SimpleDateFormat formatter = new SimpleDateFormat ("yyyy/MM/dd");
String str = formatter.format(string);
return str;
}
public static String getYMD3(Date string)
{
SimpleDateFormat formatter = new SimpleDateFormat ("MM月dd日");
String str = formatter.format(string);
return str;
}
public static String getYMDHMS()
{
SimpleDateFormat formatter = new SimpleDateFormat ("yyyy年MM月dd日 HH:mm:ss");
Date curDate = new Date(System.currentTimeMillis());//获取当前时间
String str = formatter.format(curDate);
return str;
}
public static String getStrYMD(String str)
{
SimpleDateFormat df = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
Date date= null;
try {
date = df.parse(str.trim());
} catch (ParseException e) {
e.printStackTrace();
}
SimpleDateFormat formatter = new SimpleDateFormat("yyyy/MM/dd");
String stra = formatter.format(date);
return stra;
}
public static long getDays(Date d1,Date d2)
{
long diff = d1.getTime() - d2.getTime();//这样得到的差值是微秒级别
long days = diff / (1000 * 60 * 60 * 24);
return days;
}
}

+ 16
- 1
app/src/main/java/com/qhclh/ytzh/work/carsmannage/CarsManageActivity.java View File

@ -8,6 +8,10 @@ import android.view.View;
import android.widget.TextView;
import com.qhclh.ytzh.R;
import com.qhclh.ytzh.ui.CalendarDialogFragment;
import com.qhclh.ytzh.utils.DateTimeUtil;
import java.util.Date;
import butterknife.BindView;
import butterknife.OnClick;
@ -16,7 +20,7 @@ import butterknife.OnClick;
* Created by 青花瓷 on 2017/11/30.
*/
public class CarsManageActivity extends BaseActivity1 {
public class CarsManageActivity extends BaseActivity1 implements CalendarDialogFragment.CalendarClickListener{
@BindView(R.id.toolbar1)
Toolbar mToolbar;
@BindView(R.id.chicks)
@ -189,8 +193,19 @@ public class CarsManageActivity extends BaseActivity1 {
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.screenr:
new CalendarDialogFragment().show(getSupportFragmentManager(), "start");
break;
}
return super.onOptionsItemSelected(item);
}
@Override
public void onStartCalendarClick(Date date) {
showToast(DateTimeUtil.FormatDate(date));
}
@Override
public void onEndCalendarClick(Date date) {
showToast(DateTimeUtil.FormatDate(date));
}
}

+ 3
- 3
app/src/main/res/layout/act_carsmanage.xml View File

@ -21,7 +21,7 @@
android:padding="@dimen/dp_12"
android:text="@string/Chicks"
android:textColor="@color/grey666666"
android:textSize="@dimen/text_size_20"
android:textSize="@dimen/text_size_18"
android:textStyle="bold" />
<TextView
@ -33,7 +33,7 @@
android:padding="@dimen/dp_12"
android:text="@string/GrossChicken"
android:textColor="@color/grey666666"
android:textSize="@dimen/text_size_20"
android:textSize="@dimen/text_size_18"
android:textStyle="bold" />
<TextView
@ -45,7 +45,7 @@
android:padding="@dimen/dp_12"
android:text="@string/feed"
android:textColor="@color/grey666666"
android:textSize="@dimen/text_size_20"
android:textSize="@dimen/text_size_18"
android:textStyle="bold" />


+ 25
- 0
app/src/main/res/layout/calendar_dialog_basic.xml View File

@ -0,0 +1,25 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:orientation="vertical"
android:layout_width="wrap_content"
android:layout_height="match_parent"
>
<com.prolificinteractive.materialcalendarview.MaterialCalendarView
android:id="@+id/calendarView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
/>
<!--<TextView-->
<!--android:id="@+id/textView"-->
<!--android:layout_margin="16dp"-->
<!--android:layout_width="match_parent"-->
<!--android:layout_height="wrap_content"-->
<!--android:layout_gravity="center"-->
<!--android:textAppearance="?android:attr/textAppearanceLarge"-->
<!--/>-->
</LinearLayout>

Loading…
Cancel
Save