Java android studio上toast的按钮单击事件错误

Java android studio上toast的按钮单击事件错误,java,android,Java,Android,此代码不在Android Studio上运行。我只想在点击按钮时显示一个祝酒词。请帮忙。代码如下: 我是android开发新手,很难弄明白这一点。我认为问题是一个愚蠢的语法错误或变量没有定义。还有,我如何定义“v” “@override public void onClick(视图v){…”的错误 “public void addItemStopProductSpinner()…”的错误 这是错误的v==mSubmitButton 在java中,只能使用equals运算符==基本类型。对于对象,

此代码不在Android Studio上运行。我只想在点击按钮时显示一个祝酒词。请帮忙。代码如下:

我是android开发新手,很难弄明白这一点。我认为问题是一个愚蠢的语法错误或变量没有定义。还有,我如何定义“v”

“@override public void onClick(视图v){…”的错误

“public void addItemStopProductSpinner()…”的错误


这是错误的
v==mSubmitButton
在java中,只能使用equals运算符==基本类型。对于对象,需要使用equals()方法。 替换:

请尝试以下代码:

if(v.getId() == R.id.btnSubmit){
     Toast.makeText(SiteVisitDetails.this,"Successfully Sent!",Toast.LENGTH_LONG).show();
}

我想你不需要检查

 @Override
    public void onClick(View v){

 //Don't need to check condition control come here only v.getId() == R.id.btnSubmit 
   //  if (v == mSubmitButton) { 

        Context context = getApplicationContext();
        CharSequence text = "Successfully Sent!";
        int duration = Toast.LENGTH_LONG;
        final Toast tost = Toast.makeText(context, text, duration);
        tost.show();
    //}
}
package com.shutter2000.www.shutter\u 2000\u oms;
导入android.app.Activity;
导入android.content.Context;
导入android.os.Bundle;
导入android.view.Menu;
导入android.view.MenuItem;
导入android.view.view;
导入android.widget.ArrayAdapter;
导入android.widget.Button;
导入android.widget.EditText;
导入android.widget.Spinner;
导入android.widget.Toast;
导入android.view.view.OnClickListener;
公共类SiteVisitDetails扩展活动实现OnClickListener{
公共编辑文本mCusName;
公共编辑文本mOrderID;
公共编辑文本项目;
公共编辑文本八分之一;
公共编辑文本注释;
公共按钮mSubmitButton;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity\u site\u vision\u details);
//初始化文本字段
mCusName=(EditText)findViewById(R.id.txtCusName);
mOrderID=(EditText)findViewById(R.id.txtOrderID);
mProjectID=(EditText)findViewById(R.id.txtProjectID);
mHeightWidth=(EditText)findViewById(R.id.txtHeightWidth);
mNote=(EditText)findViewById(R.id.txtNote);
mSubmitButton=(按钮)findViewById(R.id.btnSubmit);
//侦听提交按钮单击事件
mSubmitButton.setOnClickListener(此);
}
@凌驾
公共void onClick(视图v){
if(v.getId()==R.id.mSubmitButton){
Toast.makeText(这是“成功发送!”,Toast.LENGTH\u LONG.show();
}
}
@凌驾
公共布尔onCreateOptions菜单(菜单){
//为菜单充气;这会将项目添加到操作栏(如果存在)。
getMenuInflater().充气(R.menu.site\u vision\u详情,菜单);
返回true;
}
public void addItemStopProductSpinner(){
微调器微调器=(微调器)findViewById(R.id.spnProducts);
//使用字符串数组和默认微调器布局创建ArrayAdapter
ArrayAdapter=ArrayAdapter.createFromResource(此,
R.array.products、android.R.layout.simple\u spinner\u item);
//指定显示选项列表时要使用的布局
android.R.layout.simple\u微调器\u项目
//将适配器应用于微调器
旋转器。设置适配器(适配器);
}
@凌驾
公共布尔值onOptionsItemSelected(菜单项项){
//处理操作栏项目单击此处。操作栏将
//自动处理Home/Up按钮上的点击,只要
//在AndroidManifest.xml中指定父活动时。
int id=item.getItemId();
if(id==R.id.action\u设置){
返回true;
}
返回super.onOptionsItemSelected(项目);
}
}  

使用此选项。如果(v.getId()==R.id.btnSubmit),则无需检查
。因为您正在为已初始化的按钮设置单击操作。

您应该使用setter设置onclick侦听器。 由于您正在使用新的onclicklistener,并且只为您的按钮设置它,因此不需要检查v==mSubmitButton,因为它是唯一的选择:)

应该是

mSubmitButton.setOnClickListener(
编辑。方法setOnClickListener需要一个实现
视图的对象。OnClickListener
接口:

mSubmitButton.setOnClickListener(new View.OnClickListener() {

    @Override
    public void onClick(View v){
        Context context = getApplicationContext();
        CharSequence text = "Successfully Sent!";
        int duration = Toast.LENGTH_LONG;
        final Toast tost = Toast.makeText(context, text, duration);
        tost.show();
    }
});

用getApplicationContext()替换“this”


单击按钮时显示祝酒词

    mSubmitButton = (Button) findViewById(R.id.btnSubmit);
    mSubmitButton.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {

            //SiteVisitDetails
            Toast tea = Toast.makeText(getApplicationContext(), "Send", Toast.LENGTH_LONG);
            tea.show();

        }
    });

语法中的括号放错了位置,缺少
和拼写错误的
setOnClickListener
方法名称

改变

mSubmitButton.OnClickListener(new View.OnClickListener())
    {
    // ...
    }


你应该在xml文件中提到你的按钮id。例如,如果你在xml文件中的按钮id是btn_submit。那么你必须检查v.getId()==R.id.btn_submitya,我的错误,应该是大写字母,即LENGTH_longth,它给出了错误:“OnClickListener”是抽象的;无法实例化SetOnClickListner也是抽象函数,请使用studio intelligence。我希望该方法也存在。@重写公共void onClick(视图v){Toast.makeText(getApplicationContext(),“成功发送!”,Toast.Length_LONG)。show();}两个都给出了相同的结果。很高兴听到它解决了您的问题:)谢谢您的回复:)谢谢您的回复:)
 @Override
    public void onClick(View v){

 //Don't need to check condition control come here only v.getId() == R.id.btnSubmit 
   //  if (v == mSubmitButton) { 

        Context context = getApplicationContext();
        CharSequence text = "Successfully Sent!";
        int duration = Toast.LENGTH_LONG;
        final Toast tost = Toast.makeText(context, text, duration);
        tost.show();
    //}
}
package com.shutter2000.www.shutter_2000_oms;    
import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Spinner;
import android.widget.Toast;
import android.view.View.OnClickListener;    


public class SiteVisitDetails extends Activity implements OnClickListener{

public EditText mCusName;
public EditText mOrderID;
public EditText mProjectID;
public EditText mHeightWidth;
public EditText mNote;
public Button mSubmitButton;


@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_site_visit_details);

    //initialize text fields
    mCusName = (EditText) findViewById(R.id.txtCusName);
    mOrderID = (EditText) findViewById(R.id.txtOrderID);
    mProjectID = (EditText) findViewById(R.id.txtProjectID);
    mHeightWidth = (EditText) findViewById(R.id.txtHeightWidth);
    mNote = (EditText) findViewById(R.id.txtNote);
    mSubmitButton = (Button) findViewById(R.id.btnSubmit);

    //listen to submit button click event

    mSubmitButton.setOnClickListener(this);

}

@Override
public void onClick(View v) {
     if (v.getId() == R.id.mSubmitButton) {
         Toast.makeText(this,"Successfully sent!",Toast.LENGTH_LONG).show();             
     }

}

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

public void addItemsToProductSpinner() {
    Spinner spinner = (Spinner) findViewById(R.id.spnProducts);
    // Create an ArrayAdapter using the string array and a default spinner layout
    ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this,
            R.array.products, android.R.layout.simple_spinner_item);
    // Specify the layout to use when the list of choices appears
    android.R.layout.simple_spinner_item
    // Apply the adapter to the spinner
    spinner.setAdapter(adapter);
}

@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();
    if (id == R.id.action_settings) {
        return true;
    }
    return super.onOptionsItemSelected(item);
}
}  
mSubmitButton.setOnClickListener(new View.OnClickListener())
{
    @Override
    public void onClick(View v){
        CharSequence text = "Successfully Sent!";
        int duration = Toast.LENGTH_LONG;
        Toast tost = Toast.makeText(SiteVisitDetails.this, text, duration);
        tost.show();
    }

});
mSubmitButton.setOnClickListener(new View.OnClickListener())
    {

        @Override
        public void onClick(View v){

            Context context = getApplicationContext();
            CharSequence text = "Successfully Sent!";
            int duration = Toast.LENGTH_LONG;
            final Toast tost = Toast.makeText(context, text, duration);
            tost.show();

    }
 mSubmitButton.OnClickListener(
mSubmitButton.setOnClickListener(
mSubmitButton.setOnClickListener(new View.OnClickListener() {

    @Override
    public void onClick(View v){
        Context context = getApplicationContext();
        CharSequence text = "Successfully Sent!";
        int duration = Toast.LENGTH_LONG;
        final Toast tost = Toast.makeText(context, text, duration);
        tost.show();
    }
});
@Override
public void onClick(View v) {
 if (v.getId() == R.id.mSubmitButton) {
     Toast.makeText(getApplicationContext(),"Successfully sent!",Toast.Length_LONG).show();             
 }

}
    mSubmitButton = (Button) findViewById(R.id.btnSubmit);
    mSubmitButton.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {

            //SiteVisitDetails
            Toast tea = Toast.makeText(getApplicationContext(), "Send", Toast.LENGTH_LONG);
            tea.show();

        }
    });
mSubmitButton.OnClickListener(new View.OnClickListener())
    {
    // ...
    }
mSubmitButton.setOnClickListener(new View.OnClickListener()
    {
    // ...
    });