android - इसका क्या मतलब है कि एक श्रोता को मेमने से बदला जा सकता है?




lambda alertdialog (2)

इसका मतलब है कि आप अपने कोड को छोटा कर सकते हैं।

लैम्ब्डा के बिना onClickListener() का एक उदाहरण:

mButton.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        // do something here
    }
});

मेमने के साथ फिर से लिखा जा सकता है:

mButton.setOnClickListener((View v) -> {
    // do something here
});

यह एक ही कोड है। बहुत सारे श्रोताओं का उपयोग करते समय या आईडीई के बिना कोड लिखते समय यह उपयोगी है। अधिक जानकारी के लिए, this

उम्मीद है कि यह आपके प्रश्न का उत्तर देगा।

मैंने सामान्य नकारात्मक और सकारात्मक बटन क्लिक श्रोताओं के साथ एक AlertDialog लागू किया है।

जब मैंने new DialogInterface.OnClickListener() यह मुझे एक सुझाव दिखा रहा था जिसमें कहा गया था: Anonymous new DialogInterface.OnClickListener() can be replaced with lambda । मुझे पता है कि यह एक त्रुटि या कुछ बड़ा नहीं है, लेकिन वास्तव में यह सुझाव क्या है और मैं इसके बारे में क्या कर सकता हूं?

AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setPositiveButton("Text", new DialogInterface.OnClickListener() {
    @Override
    public void onClick(DialogInterface dialog, int which) {
        // do something here
    }
});

Android Studio V1.2.1.1 compileSdkVersion 22 buildToolsVersion "22.0.0" minSdkVersion 14 targetSdkVersion 22


इसके रूप में यह सरल है:

button.setOnClickListener(view -> username = textView.getText());






android-alertdialog