1
你好,我有以下代碼:如何處理lambda表達式與3個參數Java8
view.setOnLongClickListener((viewL) -> {
final CharSequence[] optionsDialog = {"Edit", "Delete"};
((MainActivity) context).myDialog.setSingleChoiceItems(optionsDialog, 0,
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
if(i==0){
final Intent myIntent = new Intent (context, MainInputActivity.class);
myIntent.putExtra("request", 8);
myIntent.putExtra("oldTask", mySubTask.getSubTaskText());
myIntent.putExtra("taskCode", mySubTask.getSubtaskCode());
((MainActivity) context).startActivityForResult(myIntent, 8);
dialogInterface.dismiss();
}
if(i==1){
realm.executeTransaction((realm) -> mySubTask.deleteSubtask());
realm.refresh();
notifyDataSetChanged();
((MainActivity) context).updateWidgets();
dialogInterface.dismiss();
}
}
});
所以在這裏我有一個SAM表達,我在內心裏想寫((MainActivity) context).myDialog.setSingleChoiceItems
爲lambda過。問題是,setSingleChoiceItems
有3個參數,我不知道我應該如何將片段轉換爲lambda。它甚至有可能嗎?根據我的IDE,這就是爲什麼我問這個問題。
就是這樣,謝謝 –