[問題] 使用Android Studio的Java傳值問題已刪文

看板AndroidDev作者時間4年前 (2020/04/29 18:49), 4年前編輯推噓2(2056)
留言58則, 5人參與, 4年前最新討論串1/1
各位好,我是剛接觸app開發的學習者,有看過書或是網路的教學影片但找不到答案 所以以下幾個問題想問問高手們 1.想請問下圖這個"滾筒式的選單"該怎麼做出來? 他的英文叫什麼?? 他只能是日期滾輪選單嗎? 能夠做出例如:性別的男、女,使用滾筒式選單點選這樣? https://i.imgur.com/nfYpKuk.png
2.請問bottom sheet可以放入1.的滾筒式選單嗎?? 如果可以的話,他該怎麼傳值呢?? 3.如下圖,我是想把"A區域輸入的值" "傳到B區域的TextView",應該是需要Button吧? 但我在bottom sheet的layout那設定OnClick沒反應 就算硬在java那設定也沒辦法做出按下按鈕後傳值到B區域的TextView那顯示 也就是不能用PutExtra,那bottom sheet該怎麼傳值呢? https://i.imgur.com/9BFMZK7.png
目前有這3個問題,但一直無法參透,所以想請高手解答 感謝。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.243.6.71 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/AndroidDev/M.1588157361.A.057.html

04/29 18:52, 4年前 , 1F
date picker, time picker, spinner之類的,github上找
04/29 18:52, 1F

04/29 18:52, 4年前 , 2F
個開源的專案就可以詳細研究做法了
04/29 18:52, 2F

04/29 22:49, 4年前 , 3F
1. Numberpicker, use setDisplayedValues
04/29 22:49, 3F
A區塊Main那我執行可以了,數字變成字串 請問B區塊bottom sheet那該怎麼寫才能執行Numberpicker呢? https://i.imgur.com/oCHVXPZ.png
(已在bottom sheet layout那建立了Numberpicker物件)

04/29 22:49, 4年前 , 4F
可以
04/29 22:49, 4F

04/29 22:51, 4年前 , 5F
3. 程式碼上Github gist才知道你的問題
04/29 22:51, 5F
抱歉,我還不會用Github 第3個問題我重新畫一次圖了,不知道這樣可不可以 https://i.imgur.com/4Re4F9h.png
就是想要bottom sheet那輸入值,透過按鈕傳送到Main.layout上顯示出來 但在bottom sheet下button那沒辦法設定onClick 所以也就無法設定按下按鈕後傳值過去的控制 https://i.imgur.com/ioFKp4F.png
請問,這該怎麼寫才行呢? 感謝。

04/30 11:05, 4年前 , 6F
你的A區跟B區 是在同一個activity裡面嗎?目前看你
04/30 11:05, 6F

04/30 11:05, 4年前 , 7F
的示意圖不曉得你是要在同一個畫面傳值,還是要跨畫
04/30 11:05, 7F

04/30 11:05, 4年前 , 8F
面傳值
04/30 11:05, 8F
A區和B區是不同activity A區和B區都各有一個java程式和Layout 只是A區會出現B區的彈出式Layout這樣

04/30 19:16, 4年前 , 9F
這問題真的很新手,建議去買本書跟著練習幾題就知道了
04/30 19:16, 9F

04/30 19:17, 4年前 , 10F
你的問題點應該是不知道其他方法
04/30 19:17, 10F
是真的不知道,目前Intent的傳值都還是不太懂,有推薦新手的入門中文書嗎? 這個問題大概會是書上什麼地方講呢?

04/30 19:17, 4年前 , 11F
xml能設定的都可以透過程式碼動態新增
04/30 19:17, 11F

04/30 19:19, 4年前 , 12F
搜尋可以下programmatically
04/30 19:19, 12F
了解 雖然看不懂programmatically和這個問題的關係,但還是感謝。

04/30 22:30, 4年前 , 13F
首先可以先學習在activity中宣告一個按鈕
04/30 22:30, 13F

04/30 22:30, 4年前 , 14F
並且指定layout的按鈕與你所宣告的按鈕做綁定
04/30 22:30, 14F

04/30 22:30, 4年前 , 15F
這樣就可在程式中定義onClick而非一定要從layout設
04/30 22:30, 15F

04/30 22:30, 4年前 , 16F
04/30 22:30, 16F
請問是像圖中這樣設定OnClick嗎(activity_main.java)? https://i.imgur.com/FMQrXWC.png
我有試過,但在Bottom Sheet.java那沒辦法這樣設定 https://i.imgur.com/ELM4Exz.png
(Bottom Sheet的layout那沒有錯誤...)

04/30 22:30, 4年前 , 17F
另外這種不同Activity的傳值
04/30 22:30, 17F

04/30 22:30, 4年前 , 18F
初學者可以去搜尋一下
04/30 22:30, 18F

04/30 22:30, 4年前 , 19F
BroadcastReceiver
04/30 22:30, 19F

04/30 22:30, 4年前 , 20F
在你這情況應該蠻適用
04/30 22:30, 20F
那個,我剛剛有google一下BroadcastReceiver好像是跟網路連線事件有關?? 請問這跟程式間的傳值有什麼關係呢?? 感謝回答。

05/01 01:01, 4年前 , 21F
老實說 我覺得先搞懂基本概念吧 不然大家回答看不懂
05/01 01:01, 21F

05/01 01:02, 4年前 , 22F
也沒甚麼意義
05/01 01:02, 22F

05/01 01:14, 4年前 , 23F
而且照你貼的程式碼 下方那個只是一個DialogFragment
05/01 01:14, 23F

05/01 01:15, 4年前 , 24F
怎麼會變成你說的兩個Activity呢?
05/01 01:15, 24F
可是DialogFr那我有java程式和layout,這樣不是Activity嗎?

05/01 13:11, 4年前 , 25F
借的話多借幾本,前面幾章都看過後搭配練習單一元件使用
05/01 13:11, 25F

05/01 13:11, 4年前 , 26F
買的話去可以翻閱的書店翻閱哪本覺得教法你看起來能接受
05/01 13:11, 26F

05/01 13:12, 4年前 , 27F
你的問題是馬步都不會就想學拳法,
05/01 13:12, 27F

05/01 13:13, 4年前 , 28F
函式都return了,後面的程式碼有可能執行到嗎?
05/01 13:13, 28F

05/01 13:14, 4年前 , 29F
P.S. 我沒有責怪之類的意思,純粹建議先把程式最入門的
05/01 13:14, 29F

05/01 13:14, 4年前 , 30F
架構、原則都了解以後再進行後續的學習
05/01 13:14, 30F
我了解,我是看了書上、網路上的一些例子照著做但不知其意,的確是超出能力 我之前是試著在return前下OnClick,結果還是不行 感謝您的建議。

05/01 21:30, 4年前 , 31F
首先先回覆BroadcastReceiver
05/01 21:30, 31F

05/01 21:30, 4年前 , 32F
之所以會查到網路連線有關
05/01 21:30, 32F

05/01 21:31, 4年前 , 33F
是因為他的用途很廣 網路連線是其一
05/01 21:31, 33F

05/01 21:31, 4年前 , 34F
但如果你google只有查到網路連線相關
05/01 21:31, 34F

05/01 21:31, 4年前 , 35F
代表你可能沒去注意到BroadcastReceiver的使用方法
05/01 21:31, 35F

05/01 21:31, 4年前 , 36F
就定義他只應用在哪塊而不去了解他怎麼使用的
05/01 21:31, 36F

05/01 21:31, 4年前 , 37F
這部分你還是要詳細看一下比較好
05/01 21:31, 37F
雖然不確定能看懂,但會去了解一下

05/01 21:43, 4年前 , 38F
第二是你貼的圖
05/01 21:43, 38F

05/01 21:43, 4年前 , 39F
findViewById的錯誤
05/01 21:43, 39F

05/01 21:44, 4年前 , 40F
除了樓上大大所提的
05/01 21:44, 40F

05/01 21:44, 4年前 , 41F
他已經return了 所以有錯誤以外
05/01 21:44, 41F

05/01 21:44, 4年前 , 42F
不確定是不是新版studio的方便帶來的錯誤
05/01 21:44, 42F

05/01 21:44, 4年前 , 43F
舊版的studio在綁定元件時
05/01 21:44, 43F

05/01 21:44, 4年前 , 44F
是要宣告成
05/01 21:44, 44F

05/01 21:44, 4年前 , 45F
bt = view.findViewById(...)
05/01 21:44, 45F

05/01 21:44, 4年前 , 46F
新版直接幫你省略了view
05/01 21:44, 46F

05/01 21:44, 4年前 , 47F
而這句程式代表的意義就是
05/01 21:44, 47F

05/01 21:44, 4年前 , 48F
你宣告的button 從你宣告的view (21行)中
05/01 21:44, 48F

05/01 21:44, 4年前 , 49F
尋找對應id的元件 把他指定給你宣告的button
05/01 21:44, 49F

05/01 21:44, 4年前 , 50F
所以這邊出現的紅字 可能是程式不知道去哪find
05/01 21:44, 50F

05/01 21:44, 4年前 , 51F
所以程式碼改成
05/01 21:44, 51F

05/01 21:44, 4年前 , 52F
bt = v.findViewById(...)
05/01 21:44, 52F

05/01 21:44, 4年前 , 53F
試試看
05/01 21:44, 53F

05/01 21:44, 4年前 , 54F
但也不確定 畢竟新版應該都調整過了
05/01 21:44, 54F
我是想說已經有R.layout.bottom_sheet了應該能找到對應的按鈕 不過剛剛試了v.和view.都還是紅字錯誤 還是很謝謝您的講解。

05/01 22:26, 4年前 , 55F
如果只是因為有一個class和layout就認為是Activity
05/01 22:26, 55F

05/01 22:26, 4年前 , 56F
那Custom View也能是一個class inflate一個layout
05/01 22:26, 56F

05/01 22:26, 4年前 , 57F
但它會是Activity嗎? 還是先去網路上找些入門的文
05/01 22:26, 57F

05/01 22:26, 4年前 , 58F
章或網路課程或是去書店找些入門書籍看吧
05/01 22:26, 58F
我是只知道在java那按右鍵New->Activity->empty那樣就是 原來還有分 感謝您的建議 ※ 編輯: MAXQb (111.243.0.149 臺灣), 05/01/2020 23:22:37
文章代碼(AID): #1UgLkn1N (AndroidDev)
文章代碼(AID): #1UgLkn1N (AndroidDev)