Не пытайтесь управлять видимостью с помощью boolean.it определенно будет работать, но это усложнит ситуацию.кроме этого, вы можете управлять этим, проверяя видимость представления лучшим способом.
Первоначально скрывайте свой суб-макет, добавив holder.notification_iv.setVisibility(View.GONE);
в метод onBindViewHolder, или вы также можете управлять через XML.
holder.notification_rl.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if(holder.notification_iv.getVisibility()==View.VISIBLE)
{
holder.iv_arrow.setImageResource(R.mipmap.down);
holder.notification_iv.setVisibility(View.GONE);
holder.notification_sub_text.setSingleLine(true);
holder.notification_sub_text.setEllipsize(TextUtils.TruncateAt.END);
int n = 1; // the exact number of lines you want to display
holder.notification_sub_text.setLines(n);
}
else
{
holder.iv_arrow.setImageResource(R.mipmap.up);
holder.notification_sub_text.setVisibility(View.VISIBLE);
holder.notification_iv.setVisibility(View.VISIBLE);
holder.notification_sub_text.setSingleLine(false);
int n = 2; // the exact number of lines you want to display
holder.notification_sub_text.setLines(n);
}
}
});