PTT
Submit
Submit
選擇語言
正體中文
简体中文
PTT
AndroidDev
[問題] TextView OnClick showDialog事件
作者:
jacky951
(藍憶)
2015-01-19 11:40:22
各位前輩好:
我想寫一個日期專用的textView,透過onclick選擇日期
因為不想要每個textView都重新copy/paste,所以想自己做一個元件。
只是在show Dailog的時候都會有error產生,想請版上先進幫我看一下有甚麼問題。
部分程式碼如下:
DateTextView extends TextView{
private DatePickerDailog dpd;
....
....
//建構子
public DateTextView(Context context, AttributeSet attrs) {
super(context, attrs);
Log.d("DateTextView", "constructor");
setAttributeField(attrs);
dpd = new DatePickerDialog(getContext(),
onDateSetListener,
cal.get(Calendar.YEAR),
cal.get(Calendar.MONTH),
cal.get(Calendar.DAY_OF_MONTH));
}
@Override
public void onClick(view v){
//這行沒有會出現removeChild error
((ViewGroup) this.getParent()).removeView(this);
//這行會出現requestFeature() must be called before adding content
dpd.show();
}
}
作者:
roganwww
(=..=)
2015-01-19 12:09:00
http://goo.gl/vmq6Vx
作者:
jacky951
(藍憶)
2015-01-19 12:38:00
那個已經google 過了 不過沒有跟我一樣的情況我也知道setContetView這個動作必須在requsetF...之前重點在於如何把textView & Dialog綁在 某個activity底下
作者: skypiece (SkeeterWang)
2015-01-20 02:52:00
請問一下為何要removeView? 另外Constructor中已經帶入context 為何不使用該context 而是使用getContext()?不能將private DatePickerDailog dpd; 宣告為static 嗎?
作者:
jacky951
(藍憶)
2015-01-22 18:39:00
是不趕時間啦 就想了解是怎麼運作,學一下這樣。謝謝你喔~
作者: skypiece (SkeeterWang)
2015-01-22 21:57:00
只知道原因出在 findDatePicker(ViewGroup group)只要有call就爆炸...picker = datePickerDialog.getDatePicker(); 改成這樣就可正常使用
http://codepad.org/n1UccPi0
可隱藏欄位"年"用findDatePicker(ViewGroup group) 找datePicker一直return null... 我比較好奇為什麼要這樣做= =?雖然說其實代碼看起來沒啥問題.. 恕小弟不才幫不上忙了.
作者:
jacky951
(藍憶)
2015-01-23 09:35:00
不會啦 真的很感謝你~我再研究研究老實說我也不知道加findDatePicker是幹嘛的 哈可能是那個時候不知道沒研究到怎麼取datepicker的時候先用網路上人家的Code試看看的吧!
繼續閱讀
[分享] WebView Javascript漏洞
KeySabre
[問題] Facebook Login with callback url
skypiece
[問題] 請問有人申請兩個以上的開發帳號嗎
javaaobo
徵才 Android Developer (project-based)
kuozi
[問題] chromebook 開發android
valda
[問題] 傳送資料到耳機孔?
LUB5566
[問題] ANDROID STUDIO Gradle問題
dwadefans
[問題] 不好意思,想請問推薦的書籍。
crazycat2
[問題] 新手買不到Nexus5其他手機選擇?
k22662266
[問題] android自定義權限無效?
kdok123
Links
booklink
Contact Us: admin [ a t ] ucptt.com