这是我想要做的 -
虽然有许多部分涉及到这一点,但我认为如果我只能在下面的代码中引用动态创建的ImageView,我的问题就会消失。要完成图片中的内容,我一直在尝试使用HorizontalSrcollView。我动态创建ImageViews的代码 -
for (int j = 1; j < cr_count + 1; j++) {
LinearLayout l = (LinearLayout) findViewById(R.id.list);
comp_hsv =
(HorizontalScrollView) findViewById(R.id.scroller);
ImageView i = new ImageView(getApplicationContext());
i.setImageResource(android.R.drawable.btn_star_big_on);
l.addView(i);
comp_hsv.fullScroll(HorizontalScrollView.FOCUS_LEFT);
}
my.XML -
<HorizontalScrollView
android:id="@+id/scroller"
android:layout_width="200dp"
android:layout_height="75dp"
android:scrollbarSize="50dp"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true">
<LinearLayout
android:id="@+id/list"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="20dp"
android:orientation="horizontal"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true" />
</HorizontalScrollView>
我一直在互联网上跑步试图让这个工作,没有运气。任何建议/帮助都会很棒。
答案 0 :(得分:0)
您可以在创建imageView.setId(urId)
时使用ImageView
。稍后使用imageView.getId()
获取ID。
您可以循环浏览LinearLayout
以检查ID
for (int i = 0; i < layout.getChildCount(); i++) {
View v = layout.getChildAt(i);
if (v instanceof ImageView) {
//check id here
}
}
答案 1 :(得分:0)
我更喜欢viewpager作为更好的解决方案。但是,如果您无法更改太多代码,您可以尝试使用这种廉价代码。
List<ImageView> refs = new ArrayList<ImageView>();
for (int j = 1; j < cr_count + 1; j++) {
LinearLayout l = (LinearLayout) findViewById(R.id.list);
comp_hsv = (HorizontalScrollView) findViewById(R.id.scroller);
ImageView i = new ImageView(getApplicationContext());
i.setImageResource(android.R.drawable.btn_star_big_on);
l.addView(i);
--> refs.add(i);
comp_hsv.fullScroll(HorizontalScrollView.FOCUS_LEFT);
}