直接上代码
布局代码
<LinearLayoutandroid:id="@+id/ll_container"android:layout_width="match_parent"android:layout_height="wrap_content"android:layout_marginHorizontal="15dp"android:layout_marginBottom="40dp"android:gravity="center_vertical"><TextViewandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:text="影片评分"android:textColor="#03082E"android:textSize="15sp"/><ImageViewandroid:id="@+id/iv1"android:layout_width="wrap_content"android:layout_height="wrap_content"android:src="@mipmap/ic_blue_xx"android:layout_marginLeft="10dp"/><ImageViewandroid:id="@+id/iv2"android:layout_width="wrap_content"android:layout_height="wrap_content"android:src="@mipmap/ic_blue_xx"android:layout_marginLeft="10dp"/><ImageViewandroid:id="@+id/iv3"android:layout_width="wrap_content"android:layout_height="wrap_content"android:src="@mipmap/ic_blue_xx"android:layout_marginLeft="10dp"/><ImageViewandroid:id="@+id/iv4"android:layout_width="wrap_content"android:layout_height="wrap_content"android:src="@mipmap/ic_blue_xx"android:layout_marginLeft="10dp"/><ImageViewandroid:id="@+id/iv5"android:layout_width="wrap_content"android:layout_height="wrap_content"android:src="@mipmap/ic_blue_xx"android:layout_marginLeft="10dp"/></LinearLayout>
Java代码
for (int i = 0; i < 5; i++) {//拼接字符串的方式获取控件idint id = getResources().getIdentifier("iv" + (i + 1), "id", getPackageName());ImageView iv = findViewById(id);int finalI = i;iv.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View view) {score = finalI+1;for (int i = 0; i < llContainer.getChildCount() - 1; i++) {ImageView iv = (ImageView) llContainer.getChildAt(i + 1);//点击位置之前选中 之后未选中if(i<=finalI){iv.setImageResource(R.mipmap.ic_blue_xx);}else {iv.setImageResource(R.mipmap.ic_xxin);}}}});}