এই উদাহরণটি দেখায় কিভাবে আমি অ্যান্ড্রয়েডে XMLPullParser করতে পারি।
ধাপ 1 − অ্যান্ড্রয়েড স্টুডিওতে একটি নতুন প্রকল্প তৈরি করুন, ফাইল ⇒ নতুন প্রকল্পে যান এবং একটি নতুন প্রকল্প তৈরি করতে সমস্ত প্রয়োজনীয় বিবরণ পূরণ করুন৷
ধাপ 2 − res/layout/activity_main.xml-এ নিম্নলিখিত কোড যোগ করুন।
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="https://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <ListView android:id="@+id/listView" android:layout_width="fill_parent" android:layout_height="wrap_content" android:dividerHeight="1dp" /> </LinearLayout>
ধাপ 3 – res/layout এ রাইট ক্লিক করুন এবং একটি লেআউট রিসোর্স ফাইল (row.xml) তৈরি করুন এবং নিম্নলিখিত কোড যোগ করুন -
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="https://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="wrap_content" android:orientation="horizontal" android:padding="5dip" > <TextView android:id="@+id/tvName" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textStyle="bold" android:textSize="17dp" /> <TextView android:id="@+id/tvDesignation" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@id/tvName" android:layout_marginTop="7dp" android:textColor="#343434" android:textSize="14dp" /> <TextView android:id="@+id/tvLocation" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignBaseline="@+id/tvDesignation" android:layout_alignBottom="@+id/tvDesignation" android:layout_alignParentRight="true" android:textColor="#343434" android:textSize="14dp" /> </RelativeLayout>
পদক্ষেপ 4৷ − src/MainActivity.java
-এ নিম্নলিখিত কোড যোগ করুনimport android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.widget.ListAdapter; import android.widget.ListView; import android.widget.SimpleAdapter; import org.xmlpull.v1.XmlPullParser; import org.xmlpull.v1.XmlPullParserException; import org.xmlpull.v1.XmlPullParserFactory; import java.io.IOException; import java.io.InputStream; import java.util.ArrayList; import java.util.HashMap; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); try { ArrayList<HashMap<String, String>> userList = new ArrayList<>(); HashMap<String,String> user = new HashMap<>(); ListView lv = findViewById(R.id.listView); InputStream inputStream = getAssets().open("userdetails.xml"); XmlPullParserFactory parserFactory = XmlPullParserFactory.newInstance(); XmlPullParser parser = parserFactory.newPullParser(); parser.setFeature(XmlPullParser.FEATURE_PROCESS_NAMESPACES,false); parser.setInput(inputStream,null); String tag = "" , text = ""; int event = parser.getEventType(); while (event!= XmlPullParser.END_DOCUMENT){ tag = parser.getName(); switch (event) { case XmlPullParser.START_TAG: if(tag.equals("user")) user = new HashMap<>(); break; case XmlPullParser.TEXT: text=parser.getText(); break; case XmlPullParser.END_TAG: switch (tag) { case "name": user.put("name",text); break; case "designation": user.put("designation",text); break; case "location": user.put("location",text); break; case "user": if(user!=null) userList.add(user); break; } break; } event = parser.next(); } ListAdapter adapter = new SimpleAdapter(MainActivity.this, userList, R.layout.row, new String[]{"name","designation","location"}, new int[]{R.id.tvName, R.id.tvDesignation, R.id.tvLocation}); lv.setAdapter(adapter); } catch (IOException e) { e.printStackTrace(); } catch (XmlPullParserException e) { e.printStackTrace(); } } }
ধাপ 5 - একটি সম্পদ ফোল্ডার তৈরি করুন, সম্পদ ফোল্ডারের ভিতরে একটি অ্যান্ড্রয়েড রিসোর্স ফাইল তৈরি করুন (userdetails.xml) এবং নিম্নলিখিত যোগ করুন
<?xml version="1.0" encoding="utf-8"?> <resources> <users> <user> <name>Sehwag</name> <designation>Vice Captain</designation> <loation>Delhi</loation> </user> <user> <name>Ashwin</name> <designation>Off Spin Bowler</designation> <loation>Chennai</loation> </user> <user> <name>Dhoni</name> <designation>Captain</designation> <loation>Ranchi</loation> </user> </users> </resources>
ধাপ 6 - androidManifest.xml
-এ নিম্নলিখিত কোড যোগ করুন<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="https://schemas.android.com/apk/res/android" package="app.com.sample"> <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:roundIcon="@mipmap/ic_launcher_round" android:supportsRtl="true" android:theme="@style/AppTheme"> <activity android:name=".MainActivity"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> </manifest>
আসুন আপনার অ্যাপ্লিকেশন চালানোর চেষ্টা করি৷ আমি ধরে নিচ্ছি আপনি আপনার কম্পিউটারের সাথে আপনার আসল অ্যান্ড্রয়েড মোবাইল ডিভাইসটি সংযুক্ত করেছেন৷ অ্যান্ড্রয়েড স্টুডিও থেকে অ্যাপটি চালাতে, আপনার প্রোজেক্টের অ্যাক্টিভিটি ফাইলগুলির একটি খুলুন এবং টুলবার থেকে রান আইকনে ক্লিক করুন। একটি বিকল্প হিসাবে আপনার মোবাইল ডিভাইস নির্বাচন করুন এবং তারপরে আপনার মোবাইল ডিভাইসটি পরীক্ষা করুন যা আপনার ডিফল্ট স্ক্রীন প্রদর্শন করবে –