java - 根据用户输入更改 ImageView
问题描述
我正在使用 Numberpicker,我在其中输入字符串。
public final String Branch[] = {"Branch","Comp", "Civil", "Mech", "Chem", "EnTC"};
我在 Firebase 中发送这些数据。在其他活动中,我使用 getter 从 firebase 获取数据。我想根据用户输入更改我的 ImageView。如果用户选择Comp作为输入,则应该显示tecomp。同样对于 mech,应该显示 temch。但在开关情况下,我的活动会被强制关闭。我的代码
databaseReference.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
UserProfile userProfile = dataSnapshot.getValue(UserProfile.class);
year = userProfile.getYear();
branch = userProfile.getBranch();
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
Toast.makeText(TimetableActivity.this,databaseError.getCode(),Toast.LENGTH_SHORT).show();
}
});
switch (branch){
case "Comp":
timetable.setImageResource(R.drawable.ttcomp);
break;
case "Mech":
timetable.setImageResource(R.drawable.ttmech);
break;
case "Civil":
timetable.setImageResource(R.drawable.ttcivil);
break;
case "EnTC":
timetable.setImageResource(R.drawable.ttentc);
break;
}
xml文件
<ImageView
android:id="@+id/iv"
android:layout_width="339dp"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentEnd="true"
android:src="@drawable/img1"
android:contentDescription="@string/Timetable" />
解决方案
推荐阅读
- python - Matplotlib 错误在我第一次运行 Jupyter 单元时发生,但不是第二次
- java - 400 error respond code
- c# - 为什么我的按钮没有改变高度,但只能使用 Auto 属性
- jquery - Callback with Datatable.ajax.reload
- ios - how to receive gestures while google ad playing
- javascript - Java Script/jQuery – 简单的 if 语句不适用于预定义的变量
- javascript - Open app if installed else send to download - Javascript
- c - How to jump to static function definition from its calling point?
- sql - 通过 SSH 连接到 localhost (WordPress - MariaDB) 在 SSMS 中创建链接服务器
- c++ - SDL best way to draw gradient background