根据用户输入更改ImageView

时间:2018-09-28 15:06:59

标签: java android imageview android-imageview

我正在使用Numberpicker,在其中我要输入String。

    public final String Branch[] = {"Branch","Comp", "Civil", "Mech", "Chem", "EnTC"};

我正在Firebase中发送此数据。在其他活动中,我正在使用getter从firebase中获取数据。我想根据用户输入更改ImageView。如果用户选择 Comp 作为输入,则应显示 tecomp 。对于机器,也应显示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" />

0 个答案:

没有答案