java - 我如何在 Button 上使用 If 方法从实时数据库获取 ActionView 链接,如果没有链接给出 toast 消息,则没有链接
问题描述
我正在使用Firebase RealTime 数据库,并使用检索数据,我在询问是否要OnClick()
为“没有可用的链接 ATM”button
ActionView
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.res_screen);
String data0= getIntent().getStringExtra("Name");
String data1= getIntent().getStringExtra("Address");
String data2= getIntent().getStringExtra("Phone1");
String data3= getIntent().getStringExtra("Phone2");
String data4= getIntent().getStringExtra("Phone3");
String data5= getIntent().getStringExtra("Offer");
final String data6= getIntent().getStringExtra("Facebook");
final String data7= getIntent().getStringExtra("Menu");
final String data8 = getIntent().getStringExtra("Menu");
TextView nm = findViewById(R.id.name);
TextView ad = findViewById(R.id.address);
TextView ph1 = findViewById(R.id.phone1);
TextView ph2 = findViewById(R.id.phone2);
TextView ph3 = findViewById(R.id.phone3);
TextView off = findViewById(R.id.closeoffer);
ImageView fb = findViewById(R.id.facebookbut);
Button menu = findViewById(R.id.menubut);
nm.setText(data0);
ad.setText(data1);
ph1.setText(data2);
ph2.setText(data3);
ph3.setText(data4);
off.setText(data5);
fb.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(data6));
startActivity(intent);
}
});
menu.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent i = new Intent(Intent.ACTION_VIEW, Uri.parse(getIntent().getStringExtra("Menu")));
startActivity(i);
}
});
}
也许我有点困惑,因为我的语言不好。我想将 if else 添加到 OnClick() 中。意思是.. 如果这个按钮有访问 ACTION_VIEW 的链接,那么就去吧。但是如果还没有从实时数据库链接,那么给一个 Toast 消息“对不起,此时没有可用的链接”
解决方案
也许你需要这样做:
fb.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//data6 may be having link to fb ,here we check if it is not null
if(data6!=null )
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(data6));
startActivity(intent);
}else{
//toast a message
Toast.makeText(Yourclass.this, "Sorry there's no link available at this moment", Toast.LENGTH_SHORT).show();
}
});
推荐阅读
- pine-script - 不同时间范围内的随机线交叉
- spring-boot - Camel AMQP 和 Spring Boot - 消息已处理但收到 org.apache.qpid.jms.JmsConnection 远程关闭警告
- javascript - 如何在同一用户的浏览器之间共享快速会话?
- c - 带有可变参数的泛型函数的 C 实现
- javascript - 我无法在 dash_tabulator 中使用 cellClick
- c# - 有没有办法将 .NET 包标记为仅限开发,因此它们不会添加到发布版本中?
- javascript - 访问数组中迭代的元素 ID 的正确语法是什么?
- html5-canvas - 如何使用js强制重绘canvas api?
- windows - 与 Windows 11 兼容的 Flutter 和 Android Studio 版本有哪些?
- spring - MapperScan 运行良好,但想法显示为错误