Как создать вид слайдера, подобный тому, который описан в изображении, и передать изображение из URL
Я проектирую пользовательский интерфейс или говорю представление.
Какой подход я должен использовать для разработки скользящего пользовательского интерфейса, как показано на рисунке?
Отредактировано: 25 августа 2017
Мне не известны различные виды, которые могут быть использованы при создании пользовательского интерфейса, как показано на рисунке. Поэтому будет полезно, если кто-нибудь скажет мне, какое представление или группу представлений следует использовать для получения тех же результатов, а также как можно отобразить изображение с URL-адреса.
2 ответа
Решение
С помощью viewpager я сделал это. Это работает хорошо.
вот некоторые фрагменты кода
инициализация
LayoutInflater flater = (LayoutInflater) LayoutInflater.from(this);
view1 = flater.inflate(R.layout.view_1, null);
view2 = flater.inflate(R.layout.view_2, null);
view3 = flater.inflate(R.layout.view_3, null);
viewList = new ArrayList<View>();
viewList.add(view1);
viewList.add(view2);
viewList.add(view3);
pagerAdapter = new MyViewPagerAdapter(viewList);
viewPager = (ViewPager) findViewById(R.id.search_viewpager);
viewPager.setAdapter(pagerAdapter);
viewPager.setCurrentItem(0);
viewPager.setOnPageChangeListener(new MyOnPageChangeListener());
ВНУТРИ XML
<android.support.v4.view.ViewPager
android:id="@+id/search_viewpager"
android:layout_width="wrap_content"
android:layout_height="200dp"
android:layout_gravity="center"
android:layout_weight="1.0"
android:background="#000000"
android:flipInterval="30"
android:persistentDrawingCache="animation" >
Я сделал что-то похожее на это:
<HorizontalScrollView
android:id="@+id/about_images_container_scroll"
android:layout_width="match_parent"
android:scrollbars="none"
android:layout_height="115dp">
<LinearLayout
android:id="@+id/about_images_container"
android:layout_width="fill_parent"
android:layout_height="match_parent"
android:orientation="horizontal">
</LinearLayout>
</HorizontalScrollView>
Ява к каждому пункту.
private void addImages()
{
imagesScroll = (LinearLayout) findViewById(R.id.about_images_container);
imagesScroll.removeAllViews();
LinearLayout.LayoutParams layoutParams1 = new LinearLayout.LayoutParams(
CONSTANT_WIDTH,
ViewGroup.LayoutParams.MATCH_PARENT);
View aSep = new View(getBaseContext());
aSep.setLayoutParams(layoutParams1);
LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(
width,
ViewGroup.LayoutParams.MATCH_PARENT);
for (int i = imageList.size()-1 ; i >= 0 ; i--)
{
ImageView firstImage = new ImageView(this);
firstImage.setLayoutParams(layoutParams);
int imageResource = getResources().getIdentifier("drawable"+"/"+imageList.get(i),null,getPackageName());
firstImage.setImageResource(imageResource);
imagesScroll.addView(firstImage);
}
}