0

Je veux horizontalListview avec défilement vertical. Auparavant, j'ai essayé de l'implémenter en utilisant Horizontalscrollview dans Listview. Cela fonctionne bien pour le non statique. des éléments de données. Mais dans mon cas, ils sont dynamiques. donc j'ai téléchargé une bibliothèque (code) de HorizontalListView de HereAjouter des Fragments dans HorizontalListView

Maintenant, je fait l'activité HorizontalListViewDemo un fragment et l'a appelé dans une autre activité. Je voulais l'appeler plusieurs fois dans l'activité avec scrollview vertical. Mais j'ai essayé avec 1 crash de Fragment et d'application. LogCat affiche une erreur dans Layoutinflator sur le fragment HorizontalListViewDemo.

HorizontalListViewDemo

public class HorizontalListViewDemo extends Fragment{ 

    @Override 
    public View onCreateView(LayoutInflater inflater, ViewGroup container, 
      Bundle savedInstanceState) { 
     // TODO Auto-generated method stub 
     View view = inflater.inflate(R.layout.listviewdemo, container, false); 
     HorizontalListView listview = (HorizontalListView)view.findViewById(R.id.listview); 
     listview.setAdapter(mAdapter); 
     return view; 



    } 

    /* @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 

     setContentView(R.layout.listviewdemo); 

     HorizontalListView listview = (HorizontalListView) findViewById(R.id.listview); 
     listview.setAdapter(mAdapter); 

    }*/ 



    private static String[] dataObjects = new String[]{ "Text #1", 
     "Text #2", 
     "Text #3", 
     "Text #4" }; 

    private BaseAdapter mAdapter = new BaseAdapter() { 

     private OnClickListener mOnButtonClicked = new OnClickListener() { 

      @Override 
      public void onClick(View v) { 
       Toast.makeText(getActivity(), "clicked",Toast.LENGTH_LONG).show(); 
       /* 
       AlertDialog.Builder builder = new AlertDialog.Builder(HorizontalListViewDemo.this); 
       builder.setMessage("hello from " + v); 
       builder.setPositiveButton("Cool", null); 
       builder.show();*/ 

      } 
     }; 

     @Override 
     public int getCount() { 
      return dataObjects.length; 
     } 

     @Override 
     public Object getItem(int position) { 
      return null; 
     } 

     @Override 
     public long getItemId(int position) { 
      return 0; 
     } 

     @Override 
     public View getView(int position, View convertView, ViewGroup parent) { 
      View retval = LayoutInflater.from(parent.getContext()).inflate(R.layout.viewitem, null); 
      TextView title = (TextView) retval.findViewById(R.id.title); 
      Button button = (Button) retval.findViewById(R.id.clickbutton); 
      button.setOnClickListener(mOnButtonClicked); 
      title.setText(dataObjects[position]); 

      return retval; 
     } 

    }; 

} 

Toute aide serait appréciée.

Logcat

06-15 01:34:37.139: D/AndroidRuntime(300): Shutting down VM 
06-15 01:34:37.139: W/dalvikvm(300): threadid=1: thread exiting with uncaught exception (group=0x4001d800) 
06-15 01:34:37.219: E/AndroidRuntime(300): FATAL EXCEPTION: main 
06-15 01:34:37.219: E/AndroidRuntime(300): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.tryntry/com.example.tryntry.Struct}: android.view.InflateException: Binary XML file line #10: Error inflating class HorizontalListView 
06-15 01:34:37.219: E/AndroidRuntime(300): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663) 
06-15 01:34:37.219: E/AndroidRuntime(300): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679) 
06-15 01:34:37.219: E/AndroidRuntime(300): at android.app.ActivityThread.access$2300(ActivityThread.java:125) 
06-15 01:34:37.219: E/AndroidRuntime(300): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033) 
06-15 01:34:37.219: E/AndroidRuntime(300): at android.os.Handler.dispatchMessage(Handler.java:99) 
06-15 01:34:37.219: E/AndroidRuntime(300): at android.os.Looper.loop(Looper.java:123) 
06-15 01:34:37.219: E/AndroidRuntime(300): at android.app.ActivityThread.main(ActivityThread.java:4627) 
06-15 01:34:37.219: E/AndroidRuntime(300): at java.lang.reflect.Method.invokeNative(Native Method) 
06-15 01:34:37.219: E/AndroidRuntime(300): at java.lang.reflect.Method.invoke(Method.java:521) 
06-15 01:34:37.219: E/AndroidRuntime(300): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868) 
06-15 01:34:37.219: E/AndroidRuntime(300): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626) 
06-15 01:34:37.219: E/AndroidRuntime(300): at dalvik.system.NativeStart.main(Native Method) 
06-15 01:34:37.219: E/AndroidRuntime(300): Caused by: android.view.InflateException: Binary XML file line #10: Error inflating class HorizontalListView 
06-15 01:34:37.219: E/AndroidRuntime(300): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:576) 
06-15 01:34:37.219: E/AndroidRuntime(300): at android.view.LayoutInflater.rInflate(LayoutInflater.java:618) 
06-15 01:34:37.219: E/AndroidRuntime(300): at android.view.LayoutInflater.inflate(LayoutInflater.java:407) 
06-15 01:34:37.219: E/AndroidRuntime(300): at android.view.LayoutInflater.inflate(LayoutInflater.java:320) 
06-15 01:34:37.219: E/AndroidRuntime(300): at com.example.tryntry.HorizontalListViewDemo.onCreateView(HorizontalListViewDemo.java:22) 
06-15 01:34:37.219: E/AndroidRuntime(300): at android.support.v4.app.Fragment.performCreateView(Fragment.java:1460) 
06-15 01:34:37.219: E/AndroidRuntime(300): at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:884) 
06-15 01:34:37.219: E/AndroidRuntime(300): at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1066) 
06-15 01:34:37.219: E/AndroidRuntime(300): at android.support.v4.app.FragmentManagerImpl.addFragment(FragmentManager.java:1168) 
06-15 01:34:37.219: E/AndroidRuntime(300): at android.support.v4.app.FragmentActivity.onCreateView(FragmentActivity.java:280) 
06-15 01:34:37.219: E/AndroidRuntime(300): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:558) 
06-15 01:34:37.219: E/AndroidRuntime(300): at android.view.LayoutInflater.rInflate(LayoutInflater.java:618) 
06-15 01:34:37.219: E/AndroidRuntime(300): at android.view.LayoutInflater.inflate(LayoutInflater.java:407) 
06-15 01:34:37.219: E/AndroidRuntime(300): at android.view.LayoutInflater.inflate(LayoutInflater.java:320) 
06-15 01:34:37.219: E/AndroidRuntime(300): at android.view.LayoutInflater.inflate(LayoutInflater.java:276) 
06-15 01:34:37.219: E/AndroidRuntime(300): at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:198) 
06-15 01:34:37.219: E/AndroidRuntime(300): at android.app.Activity.setContentView(Activity.java:1647) 
06-15 01:34:37.219: E/AndroidRuntime(300): at com.example.tryntry.Struct.onCreate(Struct.java:13) 
06-15 01:34:37.219: E/AndroidRuntime(300): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047) 
06-15 01:34:37.219: E/AndroidRuntime(300): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627) 
06-15 01:34:37.219: E/AndroidRuntime(300): ... 11 more 
06-15 01:34:37.219: E/AndroidRuntime(300): Caused by: java.lang.ClassNotFoundException: android.view.HorizontalListView in loader dalvik.system.PathClassLoader[/data/app/com.example.tryntry-1.apk] 
06-15 01:34:37.219: E/AndroidRuntime(300): at dalvik.system.PathClassLoader.findClass(PathClassLoader.java:243) 
06-15 01:34:37.219: E/AndroidRuntime(300): at java.lang.ClassLoader.loadClass(ClassLoader.java:573) 
06-15 01:34:37.219: E/AndroidRuntime(300): at java.lang.ClassLoader.loadClass(ClassLoader.java:532) 
06-15 01:34:37.219: E/AndroidRuntime(300): at android.view.LayoutInflater.createView(LayoutInflater.java:466) 
06-15 01:34:37.219: E/AndroidRuntime(300): at android.view.LayoutInflater.onCreateView(LayoutInflater.java:544) 
06-15 01:34:37.219: E/AndroidRuntime(300): at com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:66) 
06-15 01:34:37.219: E/AndroidRuntime(300): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:563) 
06-15 01:34:37.219: E/AndroidRuntime(300): ... 30 more 
06-15 01:34:39.449: I/Process(300): Sending signal. PID: 300 SIG: 9 
+0

pouvez-vous s'il vous plaît poster la trace de la pile de LogCat? –

+0

Veuillez vérifier à nouveau. Je l'ai inclus ci-dessus maintenant. – Ron

Répondre

0

title.setText (DataObjects [poste]); < < Je suppose que cela devrait être un 'String'

Questions connexes