我的datepicker Android有问题。我试图在textView中设置datePicker值,但它不起作用。
这是我的代码:
tv_title.setText("DETAIL PELANGGAN");
pelanggan = (Pelanggan)
getIntent().getExtras().getSerializable("plgan");
pos = (Integer) getIntent().getExtras().getSerializable("pos");
et_ktp.setText(pelanggan.getKtp());
et_name.setText(pelanggan.getNama());
et_address.setText(pelanggan.getAlamat());
et_ibuKandung.setText(pelanggan.getIbu_kandung());
tv_birthdate.setText(pelanggan.getTgl_lahir());
addListenerOnButton();
arDate = pelanggan.getTgl_lahir().split("-");
Log.d("Tanggal", arDate[2]+"Das");
if(arDate[2].length() > 4)
{
arDate[2] = arDate[2].substring(0,4);
}
Log.d("Tanggal", arDate[2]+"Ar");
setCustomerCurrentBirthdate();
和void setCustomerCurrentBirthdate()是
public void setCustomerCurrentBirthdate()
{
datePicker = (DatePicker) findViewById(R.id.dp_birthdate);
year = Integer.parseInt(arDate[2]);
month = Integer.parseInt(arDate[1])+1;
day = Integer.parseInt(arDate[0]);
datePicker.init(year, month, day, null);
}
对于xml of datePicker是
<DatePicker
android:id="@+id/dp_birthdate"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:visibility="gone"
android:layout_marginTop="10dp"
android:textColor="#0055FF"
android:layout_marginLeft="40dp">
</DatePicker>
问题是当datePicker出现时,它显示当前日期,而不是我在setCustomerCurrentBirthdate()中设置的日期。 有人可以帮帮我吗?
答案 0 :(得分:1)
您已经在XML中初始化DatePicker
,并使用当前日期自动设置。
在更改公开程度之前,请先使用datePicker.updateDate(year, month, day)
代替datePicker.init(year, month, day, null)
。
答案 1 :(得分:-1)
由于我收到了@Nicholas Tee的建议,我有一个想法,就是设置我的datePicker。
public void addListenerOnButtonCustomerBirth(final String[] arDate)
{
tv_birthdate.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View v)
{
final Calendar c = Calendar.getInstance();
year = Integer.parseInt(arDate[2]);
month = Integer.parseInt(arDate[1])-1;
day = Integer.parseInt(arDate[0]);
showDialog(DATE_DIALOG_ID);
}
});
}
并且为了调用void,这是使用它的方式
arDate = tv_birthdate.getText().toString().split("-");
if(arDate[2].length() > 4)
{
arDate[2] = arDate[2].substring(0,4);
}
addListenerOnButtonCustomerBirth(arDate);
确实这太业余了,但无论如何都有效。如果它可以帮助其他
,我会很高兴