看板 AndroidDev 關於我們 聯絡資訊
想要簡化 onCreate 中的程式碼 所以自己定義了一個class以及一個函數來練習 Class 是 Permission 裡面有一個 askMicrophonePermission 函數 我在 onCreate 執行 Permission().askMicrophonePermission() 很順利的進入了這個函數 但是在 ActivityCompat.checkSelfPermission( this, android.Manifest.permission.RECORD_AUDIO) 這裡出現了問題,this要怎麼改才可以?? 接著很直覺的知道 ActivityCompat.requestPermissions 的第一個參數也會出問題 = = 雖然看了有關 Context 的說明 但是似懂非懂 以下程式碼 https://ideone.com/a9gIT0 https://ideone.com/8SMxWi https://ideone.com/NZxSmb 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 203.71.94.20 ※ 文章網址: https://www.ptt.cc/bbs/AndroidDev/M.1525425316.A.A9F.html
ae86357961: 把context當作參數傳進去或者class設一個context的成 05/04 17:30
ae86357961: 員變數 05/04 17:30
wheado: 試過了,但是 requestPermission那邊會出錯 05/04 17:48
rog43: Permission 那邊的AppCompat是不是import錯了? v4改成v7試 05/04 19:31
rog43: 試 05/04 19:31
aids61517: 你在Permission裡面的this的type是Permission不是 05/05 18:59
aids61517: Context吧? 05/05 18:59
y3k: 你這是Java語法的問題 請先去找Java教學有關this的書籍 05/06 00:51
y3k: 最快的理解方式就是所有的this前面都要加上Class的Name 05/06 00:52
y3k: Permission.this之類的 習慣之後再把前面的Classname省略 05/06 00:52
ae86357961: checkSelfPermission(Context context, String permis 05/06 10:52
ae86357961: sion) Google的文件上都寫參數是context了... 05/06 10:53
ae86357961: 而ActivityCompat也沒有繼承Context 05/06 10:53
wheado: 好的,謝謝 05/07 18:48