Android 台灣中文網
標題: 圖轉換成按鈕的過程 [打印本頁]
作者: lieak5922512 時間: 2014-6-18 19:17
標題: 圖轉換成按鈕的過程
如題 小弟最近在研究個程式碼
- class button_1CL implements OnClickListener{
- public void onClick(View v) {
- String button = tv_1.getText().toString();
- switch(v.getId())
- {
- case R.id.btn_1:
- {
- tv_1.setText(button+"1");
- break;
- }
- }
- }
- }
複製代碼
這是我在寫計算機常用到的switch迴圈
可是裡面東西是從圖裡獲取id 雖然說按鈕已經轉成字串了 讀的到 可是這樣的東西沒有意義 因為 按鈕 字串 圖 這3個都是不一樣的東西
我想請問他圖是怎麼轉成按鈕的?
作者: whl 時間: 2014-6-18 19:30
有轉嗎?怎麼看不出來?只看到用對應的方式。
作者: lieak5922512 時間: 2014-6-18 20:28
我當初從書上學到得這程式碼 v.getId() 他是從圖得到id 可是按鈕被轉成字串了 再讓v.getId()讀到
因為字串不是圖 圖也不是字串 所以這東西因該沒有意義阿?
再來是那個case R.id.btn_1 跟v.getId() 因該扯不上關西吧? 可是弄switch(R.id())這東西會壞掉
可是 直接讓他讀btn_1 跟從圖上抓是讀得到的 我想問的是他是怎麼用圖就能讓按鈕動起來的?
作者: whl 時間: 2014-6-18 22:40
1."可是按鈕被轉成字串了 再讓v.getId()讀到" 這是你自己的解讀吧,我沒看過那份文件,我不知道你怎麼這樣想的。
2.R.id() 這是什麼東西?
3.每個 view 都會自動給一個 id 以用來對應,所以 case R.id.btn_1 跟v.getId() 有很大的關係,不是你想的那樣。
4.你都會用 onDraw 進階的東西,怎麼會像這種基本功沒學好,難道你都沒學到 findViewById 這個指令嗎?如果有學到,怎麼會說 R.id.btn_1 和 getId() 沒關係?
作者: lieak5922512 時間: 2014-6-19 01:42
1.R.getId()才對 抱歉 這東西我找過了 確定是沒有的
2.那個我有學到阿 我是知道那東西作用是讓東西能夠對應到按鈕 textview之類的東西阿
3.用getId()---->對應到case R.id.btn_1裡這我知道 可是這v.getId()是從圖上獲取id這id:btn_1東西
是在按扭身上捏 為啥讀得到?
這是程式碼
Mainactivity
activity
作者: CarolHsieh 時間: 2014-6-19 09:32
本帖最後由 CarolHsieh 於 2014-6-19 09:34 編輯
- public void onClick(View v) {
- String button = tv_1.getText().toString();
- switch(v.getId())
- {
- case R.id.btn_1:
- {
- tv_1.setText(button+"1");
- break;
- }
- }
-
複製代碼
這是當你有click某個物件呼叫到這隻程式的話
那他就是OnClick(View v) 的這個v
也就是說是這個物件(v)叫用了這隻程式(OnClick)
所以v.getId()可以取得當前叫用程式的物件的 id
作者: whl 時間: 2014-6-19 21:35
如果這是你想的程式碼或者改別人的程式碼,那你要再加強基本功,程式碼可以更簡潔一些,不是程式碼哪裡有大缺失,但有多餘的程式碼。
但是如果這是別人的程式碼,請你別再看了,這跟本就是誤人子弟。
作者: lieak5922512 時間: 2014-6-19 22:13
這東西是我自己寫得我敢發誓,雖然看似多於,不過我覺得我因該會留著在自己手機,因為能動,android這領域我也是剛接觸3個月,而且手上的教材剛好沒有v.getId() (從圖上獲取id)的解釋 也不知道為啥要這樣子做,才來問這按鈕,圖的關係,問了身邊也是剛學不久的人認為是字串才讓東西動起來,想了一下字串跟圖完全扯不上關係阿,最後只好跑來求救了
作者: lieak5922512 時間: 2014-6-19 23:38
本帖最後由 lieak5922512 於 2014-6-19 23:58 編輯
可是這東西的物件是圖阿