开发者

Android : How can make horizontal scroll view?

开发者 https://www.devze.com 2023-04-06 07:02 出处:网络
I am working with android, i want to make horizontal scroll view at run time, means i want to make this horizontal view by jav开发者_如何学Goa code.

I am working with android, i want to make horizontal scroll view at run time, means i want to make this horizontal view by jav开发者_如何学Goa code.

this is my code of java class

package com.pericent;

import android.app.TabActivity;
import android.content.Intent;
import android.content.res.Resources;
import android.os.Bundle;
import android.util.Log;
import android.widget.TabHost;

public class HelloTabWidget extends TabActivity  {

    private String TAG="HelloTabWidget";

    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
       // setContentView(R.layout.main);

        Resources res = getResources(); // Resource object to get Drawables
        TabHost tabHost = getTabHost();  // The activity TabHost
        TabHost.TabSpec spec;  // Resusable TabSpec for each tab
        Intent intent;  // Reusable Intent for each tab

        for(int i=0;i<10;i++)
        {

        // Create an Intent to launch an Activity for the tab (to be reused)
                intent = new Intent().setClass(this,ArtistsActivity.class);
                Log.v(TAG,"---artist activity is called---");
        // Initialize a TabSpec for each tab and add it to the TabHost
                spec = tabHost.newTabSpec("artists").setIndicator("Artists",res.getDrawable(R.drawable.ic_tab_artists)).setContent(intent);
                tabHost.addTab(spec);
        }
        setContentView(tabHost);
   }
} 


this is activity ArtistActivity which  is used in above code to make Tab Widget:-
package com.pericent;

import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.widget.TextView;

public class ArtistsActivity extends Activity {
    private String TAG="ArtistsActivity";
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        TextView textview=new TextView(this);
        textview.setText("This is Artist Activity");
        setContentView(textview);
        Log.v(TAG,"---in artist activity---");
    }
}

and this is the xml file used in above code:-
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <!-- When selected, use grey -->
    <item android:drawable="@drawable/ic_tab_artists_grey"
          android:state_selected="true" />
    <!-- When not selected, use white-->
    <item android:drawable="@drawable/ic_tab_artists_white" />
</selector>
this above xml is used to create tab widget.

this is the output of my above code:-

Android : How can make horizontal scroll view?

in my output all widget are displaying in the screen but i want to display 4 tabs at a time, and other must show after scrolling. So please suggest me how can i add scrollable facility in my java code ?

Thank you in advance.


try like this

HorizontalScrollView hr=new HorizontalScrollView(this);
hr.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT,LayoutParams.WRAP_CONTENT));

LinearLayout layout=new LinearLayout(this);
layout.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT,LayoutParams.WRAP_CONTENT));

for(int i=0;i<100;i++){
    TextView txt=new TextView(this);
    txt.setText("Text " + i );
    layout.addView(txt);
}
hr.addView(layout);

mainLayout.addView(hr);

in the above code i have added text view. but you can add any view instead of text view.


Here you go:

ScrollableTabHost.java

ScrollableTabHost is designed to behave like TabHost, but with an additional scrollview to fit more items.


i came across this link which may be useful to you http://code.google.com/p/mobyfactory-uiwidgets-android/

Edit

this is the source of the project Source

this is how you use it Add Tab

0

精彩评论

暂无评论...
验证码 换一张
取 消