Why do I get expression expected fab.setOnClickListener(View?










-1















Why can't i create a popup dialog inside of my fab.setOnClickListener(View in the onCreatemethod?



Is it due to thesyntax? Am i missing expressions?
Is my code outdated as my instructor is a old udemy course?



 public class MainActivity extends AppCompatActivity 

private AlertDialog.Builder dialogBuilder;
private AlertDialog dialog;
private EditText groceryItem;
private EditText getGroceryItem;
private EditText quantity;
private Button saveButton;

@Override
protected void onCreate(Bundle savedInstanceState)
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Toolbar toolbar = findViewById(R.id.toolbar);
setSupportActionBar(toolbar);

FloatingActionButton fab = findViewById(R.id.fab);
// === error appears on the next line ===
fab.setOnClickListener(View,

createPopupDialog());



@Override
public boolean onCreateOptionsMenu(Menu menu)
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.menu_main, menu);
return true;


@Override
public boolean onOptionsItemSelected(MenuItem item)
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();

//noinspection SimplifiableIfStatement
if (id == R.id.action_settings)
return true;


return super.onOptionsItemSelected(item);



private void createPopupDialog()

dialogBuilder = new AlertDialog.Builder(this);
View view = getLayoutInflater().inflate(R.layout.popup, null);
groceryItem = view.findViewById(R.id.groceryItem);
quantity = view.findViewById(groceryQty);
saveButton = view.findViewById(R.id.saveButton);

dialogBuilder.setView(view);
dialog = dialogBuilder.create();
dialog.show();
















share|improve this question
























  • what is View passed as an argument? What does setOnClickListener expect here?

    – jhamon
    Nov 14 '18 at 14:45















-1















Why can't i create a popup dialog inside of my fab.setOnClickListener(View in the onCreatemethod?



Is it due to thesyntax? Am i missing expressions?
Is my code outdated as my instructor is a old udemy course?



 public class MainActivity extends AppCompatActivity 

private AlertDialog.Builder dialogBuilder;
private AlertDialog dialog;
private EditText groceryItem;
private EditText getGroceryItem;
private EditText quantity;
private Button saveButton;

@Override
protected void onCreate(Bundle savedInstanceState)
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Toolbar toolbar = findViewById(R.id.toolbar);
setSupportActionBar(toolbar);

FloatingActionButton fab = findViewById(R.id.fab);
// === error appears on the next line ===
fab.setOnClickListener(View,

createPopupDialog());



@Override
public boolean onCreateOptionsMenu(Menu menu)
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.menu_main, menu);
return true;


@Override
public boolean onOptionsItemSelected(MenuItem item)
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();

//noinspection SimplifiableIfStatement
if (id == R.id.action_settings)
return true;


return super.onOptionsItemSelected(item);



private void createPopupDialog()

dialogBuilder = new AlertDialog.Builder(this);
View view = getLayoutInflater().inflate(R.layout.popup, null);
groceryItem = view.findViewById(R.id.groceryItem);
quantity = view.findViewById(groceryQty);
saveButton = view.findViewById(R.id.saveButton);

dialogBuilder.setView(view);
dialog = dialogBuilder.create();
dialog.show();
















share|improve this question
























  • what is View passed as an argument? What does setOnClickListener expect here?

    – jhamon
    Nov 14 '18 at 14:45













-1












-1








-1








Why can't i create a popup dialog inside of my fab.setOnClickListener(View in the onCreatemethod?



Is it due to thesyntax? Am i missing expressions?
Is my code outdated as my instructor is a old udemy course?



 public class MainActivity extends AppCompatActivity 

private AlertDialog.Builder dialogBuilder;
private AlertDialog dialog;
private EditText groceryItem;
private EditText getGroceryItem;
private EditText quantity;
private Button saveButton;

@Override
protected void onCreate(Bundle savedInstanceState)
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Toolbar toolbar = findViewById(R.id.toolbar);
setSupportActionBar(toolbar);

FloatingActionButton fab = findViewById(R.id.fab);
// === error appears on the next line ===
fab.setOnClickListener(View,

createPopupDialog());



@Override
public boolean onCreateOptionsMenu(Menu menu)
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.menu_main, menu);
return true;


@Override
public boolean onOptionsItemSelected(MenuItem item)
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();

//noinspection SimplifiableIfStatement
if (id == R.id.action_settings)
return true;


return super.onOptionsItemSelected(item);



private void createPopupDialog()

dialogBuilder = new AlertDialog.Builder(this);
View view = getLayoutInflater().inflate(R.layout.popup, null);
groceryItem = view.findViewById(R.id.groceryItem);
quantity = view.findViewById(groceryQty);
saveButton = view.findViewById(R.id.saveButton);

dialogBuilder.setView(view);
dialog = dialogBuilder.create();
dialog.show();
















share|improve this question
















Why can't i create a popup dialog inside of my fab.setOnClickListener(View in the onCreatemethod?



Is it due to thesyntax? Am i missing expressions?
Is my code outdated as my instructor is a old udemy course?



 public class MainActivity extends AppCompatActivity 

private AlertDialog.Builder dialogBuilder;
private AlertDialog dialog;
private EditText groceryItem;
private EditText getGroceryItem;
private EditText quantity;
private Button saveButton;

@Override
protected void onCreate(Bundle savedInstanceState)
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Toolbar toolbar = findViewById(R.id.toolbar);
setSupportActionBar(toolbar);

FloatingActionButton fab = findViewById(R.id.fab);
// === error appears on the next line ===
fab.setOnClickListener(View,

createPopupDialog());



@Override
public boolean onCreateOptionsMenu(Menu menu)
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.menu_main, menu);
return true;


@Override
public boolean onOptionsItemSelected(MenuItem item)
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();

//noinspection SimplifiableIfStatement
if (id == R.id.action_settings)
return true;


return super.onOptionsItemSelected(item);



private void createPopupDialog()

dialogBuilder = new AlertDialog.Builder(this);
View view = getLayoutInflater().inflate(R.layout.popup, null);
groceryItem = view.findViewById(R.id.groceryItem);
quantity = view.findViewById(groceryQty);
saveButton = view.findViewById(R.id.saveButton);

dialogBuilder.setView(view);
dialog = dialogBuilder.create();
dialog.show();













java android xml android-layout






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Nov 14 '18 at 14:49









jhamon

2,20431829




2,20431829










asked Nov 14 '18 at 14:39









covr687covr687

33




33












  • what is View passed as an argument? What does setOnClickListener expect here?

    – jhamon
    Nov 14 '18 at 14:45

















  • what is View passed as an argument? What does setOnClickListener expect here?

    – jhamon
    Nov 14 '18 at 14:45
















what is View passed as an argument? What does setOnClickListener expect here?

– jhamon
Nov 14 '18 at 14:45





what is View passed as an argument? What does setOnClickListener expect here?

– jhamon
Nov 14 '18 at 14:45












2 Answers
2






active

oldest

votes


















0














I think you wanted to use lambda expression. If this is the case, this is the correct syntax:



fab.setOnClickListener((View v) -> 
createPopupDialog();
);





share|improve this answer























  • correct I was trying to use lambda.. thank you!!!

    – covr687
    Nov 20 '18 at 3:57


















1














You are not passing the right arguments in setOnClickListener().

Create the listener like this:



fab.setOnClickListener(new View.OnClickListener() 
@Override
public void onClick(View v)
createPopupDialog();

);





share|improve this answer






















    Your Answer






    StackExchange.ifUsing("editor", function ()
    StackExchange.using("externalEditor", function ()
    StackExchange.using("snippets", function ()
    StackExchange.snippets.init();
    );
    );
    , "code-snippets");

    StackExchange.ready(function()
    var channelOptions =
    tags: "".split(" "),
    id: "1"
    ;
    initTagRenderer("".split(" "), "".split(" "), channelOptions);

    StackExchange.using("externalEditor", function()
    // Have to fire editor after snippets, if snippets enabled
    if (StackExchange.settings.snippets.snippetsEnabled)
    StackExchange.using("snippets", function()
    createEditor();
    );

    else
    createEditor();

    );

    function createEditor()
    StackExchange.prepareEditor(
    heartbeatType: 'answer',
    autoActivateHeartbeat: false,
    convertImagesToLinks: true,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: 10,
    bindNavPrevention: true,
    postfix: "",
    imageUploader:
    brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
    contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
    allowUrls: true
    ,
    onDemand: true,
    discardSelector: ".discard-answer"
    ,immediatelyShowMarkdownHelp:true
    );



    );













    draft saved

    draft discarded


















    StackExchange.ready(
    function ()
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53302717%2fwhy-do-i-get-expression-expected-fab-setonclicklistenerview%23new-answer', 'question_page');

    );

    Post as a guest















    Required, but never shown

























    2 Answers
    2






    active

    oldest

    votes








    2 Answers
    2






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes









    0














    I think you wanted to use lambda expression. If this is the case, this is the correct syntax:



    fab.setOnClickListener((View v) -> 
    createPopupDialog();
    );





    share|improve this answer























    • correct I was trying to use lambda.. thank you!!!

      – covr687
      Nov 20 '18 at 3:57















    0














    I think you wanted to use lambda expression. If this is the case, this is the correct syntax:



    fab.setOnClickListener((View v) -> 
    createPopupDialog();
    );





    share|improve this answer























    • correct I was trying to use lambda.. thank you!!!

      – covr687
      Nov 20 '18 at 3:57













    0












    0








    0







    I think you wanted to use lambda expression. If this is the case, this is the correct syntax:



    fab.setOnClickListener((View v) -> 
    createPopupDialog();
    );





    share|improve this answer













    I think you wanted to use lambda expression. If this is the case, this is the correct syntax:



    fab.setOnClickListener((View v) -> 
    createPopupDialog();
    );






    share|improve this answer












    share|improve this answer



    share|improve this answer










    answered Nov 14 '18 at 15:01









    GiovanneGiovanne

    784




    784












    • correct I was trying to use lambda.. thank you!!!

      – covr687
      Nov 20 '18 at 3:57

















    • correct I was trying to use lambda.. thank you!!!

      – covr687
      Nov 20 '18 at 3:57
















    correct I was trying to use lambda.. thank you!!!

    – covr687
    Nov 20 '18 at 3:57





    correct I was trying to use lambda.. thank you!!!

    – covr687
    Nov 20 '18 at 3:57













    1














    You are not passing the right arguments in setOnClickListener().

    Create the listener like this:



    fab.setOnClickListener(new View.OnClickListener() 
    @Override
    public void onClick(View v)
    createPopupDialog();

    );





    share|improve this answer



























      1














      You are not passing the right arguments in setOnClickListener().

      Create the listener like this:



      fab.setOnClickListener(new View.OnClickListener() 
      @Override
      public void onClick(View v)
      createPopupDialog();

      );





      share|improve this answer

























        1












        1








        1







        You are not passing the right arguments in setOnClickListener().

        Create the listener like this:



        fab.setOnClickListener(new View.OnClickListener() 
        @Override
        public void onClick(View v)
        createPopupDialog();

        );





        share|improve this answer













        You are not passing the right arguments in setOnClickListener().

        Create the listener like this:



        fab.setOnClickListener(new View.OnClickListener() 
        @Override
        public void onClick(View v)
        createPopupDialog();

        );






        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered Nov 14 '18 at 14:48









        forpasforpas

        12.3k3424




        12.3k3424



























            draft saved

            draft discarded
















































            Thanks for contributing an answer to Stack Overflow!


            • Please be sure to answer the question. Provide details and share your research!

            But avoid


            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.

            To learn more, see our tips on writing great answers.




            draft saved


            draft discarded














            StackExchange.ready(
            function ()
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53302717%2fwhy-do-i-get-expression-expected-fab-setonclicklistenerview%23new-answer', 'question_page');

            );

            Post as a guest















            Required, but never shown





















































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown

































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown







            Popular posts from this blog

            Top Tejano songwriter Luis Silva dead of heart attack at 64

            政党

            天津地下鉄3号線