public class SingleAudioView extends LinearLayout {
private Context context;
private ImageView ivAvatar;
private TextView tvName;
private User user;
public SingleAudioView(Context context) {
this(context, null);
}
public SingleAudioView(Context context, @Nullable AttributeSet attrs) {
super(context, attrs);
this.context = context;
initView(context);
}
private void initView(Context context) {
setOrientation(LinearLayout.VERTICAL);
View view = LayoutInflater.from(context).inflate(R.layout.layout_single_audio, this);
ivAvatar = view.findViewById(R.id.iv_avatar);
tvName = view.findViewById(R.id.tv_name);
}
public void updateUser(String userId) {
MeetingUserInfo userInfo = MeetingManager.getInstance().getUser(userId);
GlideShowUtil.showCircleImage(context, ivAvatar, userInfo.getAvatarUrl());
tvName.setText(userInfo.getName());
}
public void setVisible(boolean isVisible) {
if (isVisible) {
if (isVisible()) {
return;
}
setVisibility(View.VISIBLE);
setRemoteUserInfo();
} else {
if (!isVisible()) {
return;
}
setVisibility(View.GONE);
}
}
public void setRemoteUserInfo(){
for (Map.Entry<String, MeetingUserInfo> userInfoEntry : MeetingManager.getInstance().getAllUser().entrySet()) {
if (userInfoEntry.getKey().equals(user.getUserId())) {
continue;
}
GlideShowUtil.showCircleImage(getContext(), ivAvatar, userInfoEntry.getValue().getAvatarUrl());
tvName.setText(userInfoEntry.getValue().getName());
break;
}
}
public boolean isVisible() {
return getVisibility() == View.VISIBLE;
}
public void setUser(User user) {
this.user = user;
}
}