我有Button.当用户点击按钮时,有一些条件,条件不满足则需要显示Toast但不显示Toast Message ...
代码:已编辑
Button addMe = (Button)findViewById(R.id.addMe);
addMe.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
if(selectedReason.equals("--Select--")){
Log.i("TAG","-----");
Toast.makeText(getBaseContext(), "Reason can not be blank", Toast.LENGTH_SHORT).show();
}else if(selectedType.equals("--Select--")){
Toast.makeText(getParent(), "Discount type can not be blank", Toast.LENGTH_SHORT).show();
}else{
if(selectedType.equals("Value")){
if(spc_amount.getText().toString().equals("")){
Log.i("TAG","-----");
Toast.makeText(getBaseContext(), "Discount type can not be blank", Toast.LENGTH_SHORT).show();
}else{
if(Double.parseDouble(spc_amount.getText().toString()) > invoiceValue){
Toast.makeText(getBaseContext(), "Amonut can not be grater than invoice", Toast.LENGTH_SHORT).show();
}else{
Discount dis = new Discount();
dis.setCriteriaName(selectedReason);
dis.setDiscountValue(Double.parseDouble(spc_amount.getText().toString()));
spDisList.put(1,dis);
tl.removeAllViews();
loadTableLayout();
}
}
}
}
}
});
Run Code Online (Sandbox Code Playgroud)
我曾尝试与语境getParent()
,getApplicationContext()
,SpecialDiscountActivity.this
和getBaseContext()
,但不工作....
这个Toast
消息来自于Tab Activity Group
小智 101
尝试:
Toast.makeText(getBaseContext(), "Reason can not be blank", Toast.LENGTH_SHORT).show();
Run Code Online (Sandbox Code Playgroud)
你在所有地方都省略了.show(),它会导致所有你的toast实例化,但永远不会执行.
Lal*_*ani 60
我想你错过了.show();
应该......
Toast.makeText(getBaseContext(), "Amount can not be grater than invoice",
Toast.LENGTH_SHORT).show();
Run Code Online (Sandbox Code Playgroud)
小智 60
如果这不是您的问题的解决方案,请原谅我,但我不小心取消选中应用程序的"显示通知"设置一次.这可能是一个想法进入您的设备设置/应用程序/管理器并检查此设置.
Ali*_*eni 38
只需重新启动您的设备!它解决了我的问题。
我确实喜欢这个
Toast.makeText(SalesActivityGroup.group.getParent(), "Amount can not be
grater than invoice", Toast.LENGTH_SHORT).show();
Run Code Online (Sandbox Code Playgroud)
刚刚碰到这个问题,并想知道如何不出现一个简单的Toast。经过几次试用后,我很惊讶地检查了该应用程序和Voila的通知设置。
我打开了通知设置,它开始显示。我搜索并找到了以下链接,该链接讨论了相同的内容:
https://code.google.com/p/android/issues/detail?id=35013
如果 Toast 没有显示,则意味着您没有调用show()
方法或您不在UI 线程上
理想情况下,您应该创建一个辅助方法来在 UI 线程上像这样显示 Toast
/** Execute Toast on UI thread **/
private fun showToast(message: String) {
Handler().post {
// Code here will run in UI thread
Toast.makeText(
this,
message,
Toast.LENGTH_LONG
).show()
}
}
Run Code Online (Sandbox Code Playgroud)
可能有两种可能性:
1-您尚未.show();
在末尾追加Toast.makeText(getActivity(), "Hi", Toast.LENGTH_SHORT)
。
2-可能存在您未传递正确上下文的情况
为此尝试通过 getActivity().getApplicationContext();
在我看来,这解决了这个问题。
祝好运 :)
归档时间: |
|
查看次数: |
60125 次 |
最近记录: |