Reputation: 817
I am trying to implement a list view with horizontal scroll view. I am getting a logcat error "null pointer exception " while setting list view adapter. My list view should be displayed inside sherlock fragment
public class Trending extends SherlockFragment
{
List<String> list;
ListView prog_list;
// Array of integers points to images stored in /res/drawable-ldpi/
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState)
{
View myFragmentView = inflater.inflate(R.layout.trendslay, container,false);
prog_list = (ListView)myFragmentView.findViewById(R.id.lv1);
return prog_list;
}
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
list = new ArrayList<String>();
list.add("hi");
list.add("hello");
list.add("how r u");
list.add("hi");
list.add("hello");
list.add("how r u");
list.add("hi");
list.add("hello");
list.add("how r u");
ArrayAdapter<String> adapter = new ArrayAdapter<String>(getActivity(),
android.R.layout.simple_list_item_1, android.R.id.text1,list);
prog_list.setAdapter(adapter);
}
Upvotes: 1
Views: 12979
Reputation: 170
TRY THIS:
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState)
{
View myFragmentView = inflater.inflate(R.layout.trendslay,container,false);
prog_list = (ListView)myFragmentView.findViewById(R.id.lv1);
list = new ArrayList<String>();
list.add("hi");
list.add("hello");
list.add("how r u");
list.add("hi");
list.add("hello");
list.add("how r u");
list.add("hi");
list.add("hello");
list.add("how r u");
ArrayAdapter<String> adapter = new ArrayAdapter<String>getActivity(),
android.R.layout.simple_list_item_1, android.R.id.text1,list);
prog_list.setAdapter(adapter);
return myFragmentView ;
}
Upvotes: 0
Reputation: 67286
I had the same requirement of creating a Horizontal ListView inside Vertical ListView and I had tried to manage that using TwoWayView for Horizontal scrolling of ListView items with Vertical scrolling. You can check my demo for the same on github as VerticalHorizontalListView.
Upvotes: 6
Reputation: 8081
You can use vertical scroll view
and in your layout give android:fillViewport="true"
this will give you horizontal scroll effect without using horizontal scroll view
<ScrollView
android:id="@+id/scrollView1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="true" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent" >
<ListView
android:id="@+id/listView1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1" >
</ListView>
</LinearLayout>
</ScrollView>
Upvotes: 1
Reputation: 7626
Add prog_list.setHorizontalScrollBarEnabled(true);
after setAdapter();
Upvotes: 0