در این مطلب قصد داریم، روش ساختن یک لیست ویو ساده در اندروید را آموزش دهیم.
این لیست ویو منبع اطلاعات خود را از یک آرایه می گیرد.
پیش نیاز های این آموزش عبارتند از:
محیط برنامه نویسی: Eclipse
API مورد استفاده: ترجیحا 14 معادل Android 4.0.4
ابتدا همانند تصویر زیر ابتدا یک پروژه جدید می سازیم:
بقیه مراحل ساخت پروژه را به صورت پیشفرض انتخاب کنید تا صفحه ی زیر را مشاهده نمایید:
TextView موجود روی فرم را حذف کرده و از قسمت Composite کنترل ListView را روی فرم بکشید، همانند شکل زیر:
کد فایل activity_main.xml باید همانند زیر باشد:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/LinearLayout1" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <ListView android:id="@+id/listView1" android:layout_width="match_parent" android:layout_height="wrap_content" > </ListView> </LinearLayout>
اکنون باید یک آرایه در فایل MainActivity.java بسازیم. کد را به صورت زیر وارد می کنیم:
آرایه مورد نظر ما لیستی از سایتهای دوستانم می باشد. حالا یک ArrayAdapter می سازیم و به عنوان منبع برای لیست ویو قرار می دهیم:
اکنون در کد زیر مشخص می کنیم که اگر روی یک رکورد مورد نظر کلیک شد، مکان و همچنین متن رکورد را با یک پیغام مناسب نمایش دهد:
اکنون کد آماده است. کافی است برنامه را اجرا کنید تا خروجی را به صورت زیر در شبیه ساز مشاهده کنید:
کد کامل فایل MainActivity.java به صورت زیر می باشد:
package ir.parsiprozhe.listview; import android.app.Activity; import android.os.Bundle; import android.view.Menu; import android.view.MenuItem; import android.view.View; import android.widget.AdapterView; import android.widget.AdapterView.OnItemClickListener; import android.widget.ArrayAdapter; import android.widget.ListView; import android.widget.Toast; public class MainActivity extends Activity { String[] arr1=new String[]{ "www.parsiprozhe.ir","www.milad-hatami.ir","www.gelf.ir" ,"wwww.SWDL.ir","www.lor-it.com","www.lorestan.info", "www.soitip.org" }; ListView list1; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); list1=(ListView)findViewById(R.id.listView1); ArrayAdapter<String> adapter=new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1,arr1); list1.setAdapter(adapter); list1.setOnItemClickListener(new OnItemClickListener() { @Override public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) { // TODO Auto-generated method stub String msg="pos= "+arg2+" value= "+(String)list1.getItemAtPosition(arg2); Toast.makeText(getApplicationContext(), msg, Toast.LENGTH_SHORT).show(); } }); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); return true; } @Override public boolean onOptionsItemSelected(MenuItem item) { // Handle action bar item clicks here. The action bar will // automatically handle clicks on the Home/Up button, so long // as you specify a parent activity in AndroidManifest.xml. int id = item.getItemId(); if (id == R.id.action_settings) { return true; } return super.onOptionsItemSelected(item); } }
امیدواریم که از این آموزش نهایت استفاده را برده باشید.
برای دانلود سورس پروژه ساخت ListView ساده اندروید روی لینک زیر کلیک کنید.
در آموزش بعدی به روش ساخت لیست ویو سفارشی اندروید را به شما نشان خواهیم داد.