【发布时间】:2021-10-02 12:19:29
【问题描述】:
所以我得到了这个关于 AlertDialog 的 java 代码:
AlertDialog.Builder builder= new AlertDialog.Builder(context:this);
builder.setTitle("Pick Image")
.setItems(options, new DialogInterface.OnClickListener(){
@Override
public void onClick(DialogInterface dialog, int which){
if(which==0){
if(checkCameraPermission())pickFromcamera();
else requestCameraPermission();
} else{
if(checkStoragePermission()) pickFromGallery();
else requestStoragePermission();
}
}
}
我尝试在我的 Kotlin 项目中使用它,所以我对其进行了一些更改。我的代码如下:
val options: Array<String> = arrayOf("Kamera","Gallery")
val builder= AlertDialog.Builder(this)
builder.setTitle("Pilih Gambar")
.setItems(options,DialogInterface.OnClickListener(){
@Override
fun onClick(dialog: DialogInterface, which: Int){
if(which==0){
if(checkCameraPermission()){
pickFromCamera()
}
else{
requestCameraPermission()
}
}
else{
if(checkStoragePermission()){
pickFromGallery()
}
else{
requestStoragePermission()
}
}
}
})
.show()
但我在 setItems 中收到此错误: Expected 2 parameters of types DialogInterface!, Int。为什么会这样?我做错了什么?
【问题讨论】:
标签: kotlin android-camera android-alertdialog android-storage