[問題] TextView OnClick showDialog事件
各位前輩好:
我想寫一個日期專用的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();
}
}
--
ζ
ξ
長的越帥,責任越重 ○-
<(╯
難怪這一生我活著都沒什麼壓力.. ■)
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 60.251.44.33
※ 文章網址: https://www.ptt.cc/bbs/AndroidDev/M.1421638842.A.8CF.html
※ 編輯: jacky951 (60.251.44.33), 01/19/2015 11:41:30
→
01/19 12:09, , 1F
01/19 12:09, 1F
→
01/19 12:38, , 2F
01/19 12:38, 2F
→
01/19 12:39, , 3F
01/19 12:39, 3F
→
01/19 12:39, , 4F
01/19 12:39, 4F
→
01/20 02:52, , 5F
01/20 02:52, 5F
→
01/20 02:53, , 6F
01/20 02:53, 6F
→
01/20 02:54, , 7F
01/20 02:54, 7F
removeView的問題,可能是我對於這個架構不是很懂,看log後做的測試
我也還在測試中,看要怎麼處理這個部分。
context的原因是因為我是用
constructor (){
init();
}
init(){
dtp =...;
}
的方式去做。所以用getContext去取這個textView的Context。
不知道這樣是否我的理解有誤呢?
至於static的問題,因為我想要一個textView綁一個datePickerDialog
方便讓我在xml中直接使用。
※ 編輯: jacky951 (60.251.44.33), 01/21/2015 11:20:55
→
01/22 14:12, , 8F
01/22 14:12, 8F
第一次用github,不知道這樣可不可以
https://github.com/ArJay951/test/blob/master/DateTextView
*剛測試一下,在new datePickerDialog之後立馬show(),之後功能就正常。
結果雖然是我要的,不過不太懂過程,現在正在看source code理解中...
※ 編輯: jacky951 (60.251.44.33), 01/22/2015 16:19:51
※ 編輯: jacky951 (60.251.44.33), 01/22/2015 16:39:48
→
01/22 17:59, , 9F
01/22 17:59, 9F
→
01/22 17:59, , 10F
01/22 17:59, 10F
那個是用來設定是否顯示、年、月、日的設定
※ 編輯: jacky951 (60.251.44.33), 01/22/2015 18:12:17
→
01/22 18:25, , 11F
01/22 18:25, 11F
→
01/22 18:27, , 12F
01/22 18:27, 12F
→
01/22 18:28, , 13F
01/22 18:28, 13F
→
01/22 18:39, , 14F
01/22 18:39, 14F
→
01/22 18:39, , 15F
01/22 18:39, 15F
→
01/22 21:57, , 16F
01/22 21:57, 16F
→
01/22 21:58, , 17F
01/22 21:58, 17F
→
01/22 21:59, , 18F
01/22 21:59, 18F
→
01/22 21:59, , 19F
01/22 21:59, 19F
→
01/22 22:04, , 20F
01/22 22:04, 20F
→
01/22 22:05, , 21F
01/22 22:05, 21F
→
01/22 22:05, , 22F
01/22 22:05, 22F
→
01/22 22:22, , 23F
01/22 22:22, 23F
→
01/23 09:35, , 24F
01/23 09:35, 24F
→
01/23 09:41, , 25F
01/23 09:41, 25F
→
01/23 09:41, , 26F
01/23 09:41, 26F
→
01/23 09:42, , 27F
01/23 09:42, 27F