I want to make my listview which only scroll horizontally like flipkart home page.
Here, is my fragment_home.xml
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="5dp"
android:textColor="#000"
android:textSize="20dp"
android:layout_marginBottom="1dp"
android:text="SAREES"/>
<View
android:layout_width="fill_parent"
android:layout_height="1dp"
android:background="#000">
</View>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="250dp"
android:layout_marginTop="5dp">
<ListView
android:id="@+id/sarees_listview"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
</ListView>
<!--<android.support.v4.view.ViewPager-->
<!--android:id="@+id/sarees_viewPager"-->
<!--android:layout_width="fill_parent"-->
<!--android:layout_height="fill_parent"-->
<!--android:layout_gravity="center"-->
<!--android:layout_marginLeft="10dp"-->
<!--android:layout_marginRight="10dp"-->
<!--android:background="@android:color/transparent" />-->
</LinearLayout>
</LinearLayout>
</ScrollView>
Here, is my Adapter class which inflate listview items
package adapter;
import android.content.Context;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentStatePagerAdapter;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import com.domore.onlineangelnx.R;
import java.util.List;
public class SareesPagerAdapter extends BaseAdapter{
private Context context;
private List<String> list;
private LayoutInflater inflater;
public SareesPagerAdapter(Context context,List<String> list){
this.context=context;
this.list=list;
}
@Override
public int getCount() {
return list.size();
}
@Override
public Object getItem(int position) {
return position;
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
if(convertView==null){
inflater=(LayoutInflater)this.context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
convertView=inflater.inflate(R.layout.sarees_view_pager,null);
// ImageView img=(ImageView)convertView.findViewById(R.id.img_nature);
}
return convertView;
}
}
Here, is my sarees_view_pager.xml which has 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="match_parent">
<HorizontalScrollView
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="match_parent">
<ImageView
android:id="@+id/img_nature"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/test"/>
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/test"/>
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/test"/>
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/test"/>
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/test"/>
</LinearLayout>
</HorizontalScrollView>
</LinearLayout>
Here, is homefragment.java which inflate home_fragment.xml
package MainFragments;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.view.ViewPager;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ListView;
import com.domore.onlineangelnx.R;
import java.util.ArrayList;
import java.util.List;
import adapter.SareesPagerAdapter;
public class HomeFragment extends Fragment {
View rootView;
SareesPagerAdapter adapter;
List<String> items=null;
ListView listview;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
rootView=inflater.inflate(R.layout.home_fragment, container, false);
listview=(ListView)rootView.findViewById(R.id.sarees_listview);
items=new ArrayList<>();
items.add("well done");
items.add("well done");
items.add("well done");
items.add("well done");
adapter=new SareesPagerAdapter(getContext(),items);
listview.setAdapter(adapter);
return rootView;
}
}
HomeFragment.java which set the listview items and call the adapter class. Problem is my listview display it's items in vertically and horizontally both way.
Please, help me to solve out this problem.