android– 类型不匹配:无法将void转换为toast

android– 类型不匹配:无法将void转换为toast,第1张

概述我在我的主要活动中有一个方法是void返回类型.如果我在方法中创建一个Toast,它会显示错误“类型不匹配:无法将void转换为toast”.任何人都可以解释什么是问题,并帮助我解决方案?publicclassHelloList<View>extendsListActivity{/**Calledwhentheactivityisfirstc

我在我的主要活动中有一个方法是voID返回类型.如果我在方法中创建一个Toast,它会显示错误“类型不匹配:无法将voID转换为toast”.任何人都可以解释什么是问题,并帮助我解决方案?

public class HelloList<VIEw> extends ListActivity  {    /** Called when the activity is first created. */    @OverrIDe    public voID onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);       setlistadapter(new ArrayAdapter<String>(this, R.layout.List_item, COUNTRIES)); ListVIEw lv=getListVIEw();      lv.setTextFilterEnabled(true);      lv.setonItemClickListener(new OnItemClickListener(){             @OverrIDe            public voID onItemClick(AdapterVIEw<?> arg0,androID.vIEw.VIEw arg1, int arg2, long arg3) {                // Todo auto-generated method stub             //  Toast.makeText(getApplicationContext(), ((TextVIEw) arg1).getText(),Toast.LENGTH_SHORT).show();                System.out.println(arg2);                String s="position is "+arg2;                Toast.makeText(getApplicationContext(),s,Toast.LENGTH_SHORT).show();            }          });      registerForContextMenu(lv);      /*int i=lv.getCheckedItemposition();          Toast.makeText(getApplicationContext(),,Toast.LENGTH_SHORT).show();*/    }    public voID onCreateContextMenu(ContextMenu menu, androID.vIEw.VIEw v,                                    ContextMenuInfo menuInfo) {      super.onCreateContextMenu(menu, v, menuInfo);      MenuInflater inflater = getMenuInflater();      inflater.inflate(0x7f030000, menu);    }    public boolean onContextItemSelected(MenuItem item) {      AdapterContextMenuInfo info = (AdapterContextMenuInfo) item.getMenuInfo();      switch (item.getItemID()) {      case 0x7f030000:        editNote(info.ID);        return true;      default:        return super.onContextItemSelected(item);      }    }   public voID editNote(long ID) {    Toast m=Toast.makeText(this, "asdasd", 3);    m.show();    }

解决方法:

问题是您可以为变量分配方法.如果要直接显示,吐司应如下所示:

Toast.makeText(context, text, duration).show();

或者在你的情况下:

Toast.makeText(this, "sadasd", 2).show();

如果要将Toast存储在变量中然后显示它,则必须这样做:

Toast toast = Toast.makeText(context, text, duration);toast.show();

或者在您的具体情况中:

Toast toast = Toast.makeText(this, "sadasd", 2);toast.show();

在旁注:最好在Toast中使用常量LENGHT_SHORT和LENGTH_LONG来定义持续时间而不是2.特别是如果2在这里似乎不是有效值.详见此处:http://developer.android.com/reference/android/widget/Toast.html

然后它看起来像这样:

Toast.makeText(this, "sadasd", Toast.LENGTH_LONG).show();
总结

以上是内存溢出为你收集整理的android – 类型不匹配:无法将void转换为toast全部内容,希望文章能够帮你解决android – 类型不匹配:无法将void转换为toast所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1112702.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存