Omid Zakeri

کار با shelfview

1 ارسال در این موضوع قرار دارد

در این مقاله ما سعی می کنیم یک نمایشگر قفسه ای داشته باشیم که فهرستی از کتاب ها یا روزنامه ها و غیره را نشان می دهد.

ابتدا در فایل xml.   شما باید از ScrollView و TableLayout برای نمایش یک قفسه استفاده کنید.

<?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="wrap_content"

    android:id="@+id/sclView">
    <TableLayout

            android:id="@+id/tblLayout"

            android:layout_width="fill_parent"

            android:layout_height="fill_parent" 

           android:padding="0dp">
    </TableLayout>
</ScrollView>

در TableLayout داخلی چند HorizontalScroll اضافه کنید که برابر با تعداد ردیف است. همچنین  در هر   TableRow  داخلی یک image را وارد کنید. فراموش نکنید که یک تصویر قفسه برای پس زمینه ردیف تنظیم کنید:

Libary shelf view

public class showShelfView extends Activity {

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


        int numRow = 4;
        int numCol = 8;

        TableLayout tblLayout = (TableLayout) findViewById(R.id.tblLayout);

        for(int i = 0; i < numRow; i++) {
            HorizontalScrollView HSV = new HorizontalScrollView(this);
            HSV.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT, 
            		LayoutParams.FILL_PARENT));

            TableRow tblRow = new TableRow(this);
            tblRow.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT, 
            		LayoutParams.WRAP_CONTENT));
            tblRow.setBackgroundResource(R.drawable.bookshelf);

            for(int j = 0; j < numCol; j++) {
            ImageView imageView = new ImageView(this);
                imageView.setImageResource(R.drawable.book1);

                TextView textView = new TextView(this);
                textView.setText("Java Tester");
                textView.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, 
                		LayoutParams.WRAP_CONTENT));

                tblRow.addView(imageView,j);
            }

            HSV.addView(tblRow);
            tblLayout.addView(HSV, i);
        }
    }
}

توجه داشته باشید، ما TableRow و HorizontalScrollView را برابر با تعداد متغیر numRow مقایسه می کنیم. شما می توانید یک Dialog یا Editview برای مقدار ورودی استفاده کنید، سپس ردیف هایی با همان مقدار ایجاد کنید.

shelfviewexample2.png

 

به اشتراک گذاری این پست


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری