如何在android中獲取月份和年份? (當我們點擊左右箭頭時,按升序和降序排列)。在android中獲取月份和年份?
我附上截圖以供參考
https://s28.postimg.org/gyuzzumkd/time_date.jpg
我使用一些代碼從他0x5f3759df答案:
我的代碼:
import android.app.DatePickerDialog;
import android.content.Intent;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.DatePicker;
import android.widget.ImageButton;
import android.widget.ImageView;
import android.widget.ListView;
import android.widget.TextView;
public class Fragment_A extends Fragment implements OnClickListener {
private ListView list;
ImageButton next,previous;
ImageView newmemory;
TextView tv;
public Fragment_A() {
// Required empty public constructor
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
View rootview = inflater.inflate(R.layout.fragment_a, container, false);
// call the views with this layout
list = (ListView) rootview.findViewById(R.id.listView1);
next = (ImageButton) rootview.findViewById(R.id.ibLeftarrow);
previous = (ImageButton) rootview.findViewById(R.id.ibRightarrow);
newmemory = (ImageView)rootview.findViewById(R.id.ivNewMemory);
tv = (TextView) rootview.findViewById(R.id.tvMonth);
next.setOnClickListener(this);
previous.setOnClickListener(this);
newmemory.setOnClickListener(this);
CustomAdapterA adapter = new CustomAdapterA(getActivity());
list.setAdapter(adapter);
return rootview;
}
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
if(v.getId()==R.id.ibLeftarrow)
{
createDialogWithoutDateField().show();
}
else if (v.getId()==R.id.ibRightarrow)
{
createDialogWithoutDateField().show();
}
else if (v.getId()==R.id.ivNewMemory)
{
Intent i = new Intent(getActivity(), NewMemory.class);
startActivity(i);
}
}
private DatePickerDialog createDialogWithoutDateField(){
DatePickerDialog dpd = new DatePickerDialog(getActivity(), datePickerListener ,2014,1, 24);
try{
java.lang.reflect.Field[] datePickerDialogFields = dpd.getClass().getDeclaredFields();
for (java.lang.reflect.Field datePickerDialogField : datePickerDialogFields) {
if (datePickerDialogField.getName().equals("mDatePicker")) {
datePickerDialogField.setAccessible(true);
DatePicker datePicker = (DatePicker) datePickerDialogField.get(dpd);
java.lang.reflect.Field[] datePickerFields = datePickerDialogField.getType().getDeclaredFields();
for (java.lang.reflect.Field datePickerField : datePickerFields) {
Log.i("test", datePickerField.getName());
if ("mDaySpinner".equals(datePickerField.getName())) {
datePickerField.setAccessible(true);
Object dayPicker = new Object();
dayPicker = datePickerField.get(datePicker);
((View) dayPicker).setVisibility(View.GONE);
}
}
}
}
}catch(Exception ex){
}
return dpd;
}
private DatePickerDialog.OnDateSetListener datePickerListener
= new DatePickerDialog.OnDateSetListener() {
// when dialog box is closed, below method will be called.
public void onDateSet(DatePicker view, int selectedYear,
int selectedMonth, int selectedDay) {
int year = selectedYear;
int month = selectedMonth;
tv.setText(new StringBuilder().append(month+1)
.append(" ").append(year)
.append(" "));
}
};
}
,可以用[採摘](http://developer.android.com/guide/topics/ui/controls/pickers.html)。 [相關SO問題](http://stackoverflow.com/questions/21321789/android-datepicker-change-to-only-month-and-year) – 0x5f3759df 2014-08-28 08:03:38
@ 0x5f3759df:Thanx爲您的答覆我解決了這個問題。 – Srikanth 2014-08-28 12:35:19