在我的应用程序中,我需要通过拖动触摸屏来使用ViewFlipper切换屏幕。我有一个包含一些项目的ListView。选择项目时,我必须显示一些图像。问题是图像的数量从一个项目到另一个项目是不同的。所以我认为我必须以编程方式创建LinearLayout和ImageView。我有可能做什么吗?
提前致谢..
这是我尝试过的代码:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="fill_parent"
android:layout_height="fill_parent" android:background="#000000"
android:id="@+id/layout_main">
<ViewFlipper android:id="@+id/details"
android:layout_width="fill_parent" android:layout_height="fill_parent">
</ViewFlipper>
</LinearLayout>
和Oncreate()方法:
for (int i = 0; i < jArray.length(); i++) {
LinearLayout l=new LinearLayout(this);
l.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT,
LayoutParams.FILL_PARENT));
l.setBackgroundColor(0xFFFFFFFF);
l.setOrientation(LinearLayout.VERTICAL);
ImageView img = new ImageView(this);
img.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT,
LayoutParams.FILL_PARENT));
//ImageView img1 = (ImageView) findViewById(R.id.photo1);
Drawable image1 = ImageOperations(getBaseContext(), url[i]);
img.setImageDrawable(image1);
l.addView(img);
}
但没有任何反应。我只看到一个黑色的大屏幕。
答案 0 :(得分:0)
我完全不明白你说的是什么,但之前我在ViewFlipper上工作过。使用四个线性布局作为ViewFlipper的子视图,在xml中。 (首先我尝试将listviews直接添加为childview,但添加linearlayouts会更容易)
并添加了listviews,就像你对java代码中相应的linearlayouts所说的那样。
并且有效。
希望它有所帮助。
这是我用于xml的代码:
<RelativeLayout android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:id="@+id/tabrelay"
android:gravity="center_horizontal"
>
<ViewFlipper android:id="@+id/details"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
style="@style/FlipperMargins.flipper"
>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_gravity="center"
android:orientation="vertical"
android:id="@+id/list1"
android:listSelector="@color/sprgreen"
android:drawSelectorOnTop="true"
android:background="@drawable/deckbackn"
style="@style/Webview.view"
/>
<LinearLayout
android:layout_width="@dimen/webViewWidth"
android:layout_height="@dimen/webViewHeight"
android:layout_gravity="center"
android:divider="@color/grey46"
android:dividerHeight="1dp"
android:id="@+id/list2"
android:background="@drawable/white"
style="@style/Webview.view"
/>
<LinearLayout
android:layout_width="@dimen/webViewWidth"
android:layout_height="@dimen/webViewHeight"
android:layout_gravity="center"
android:orientation="vertical"
android:id="@+id/list3"
android:listSelector="@color/sprgreen"
android:drawSelectorOnTop="true"
android:background="@drawable/commentsbg"
style="@style/Webview.view"
/>
<WebView
android:id="@+id/helloWebView"
android:layout_width="@dimen/webViewWidth"
android:layout_height="@dimen/webViewHeight"
android:layout_gravity="center"
android:background="@drawable/white"
style="@style/Webview.view"
/>
</ViewFlipper>
</RelativeLayout>
之后你就可以从xml中获取一些线性布局,并从java中添加你想要的列表视图等等。