10/10/2011

Android:XmlPullParser & Dialog


Блогтоо XmlPullParser & Dialog ашигласан жижигхэн жишээ оруулж байна. Та бүхэн санаа оноо авна биз дээ.


Тайлбар :

XmlPullParser функцыг ашигласнаар хавтсанд байрлах бүх XML файлуудыг уншиж файл тус бүрээр тэдгээрийн утгыг хялбараар ашиглаж болдог.



Тайлбар :

Энэ удаагынхаа жишээ нь Dialog ашиглах бүртээ тодорхойлох бус Dialog функыг нэг тодорхойлон хэд хэдэн удаа Dialog-н утга болон гарчигийн дахин тодорхойлж болохуйц жишээ болно.


assets хавтсанд dialog.xml файлыг үүсгэнэ.



XmlPullParser and Dialog
XmlPullParser and Dialog ашигласан жишээ


Жишээ код :

//Dialog Flg
public static final int DIALOG_FLG = 0;
//Dialog Title
public static final String STR_TITLE = "TITLE";
//Dialog Message
public static final String STR_MESSAGE = "MESSAGE";
// Tag-n ner
String STR_TAG = "";
// Value
String STR_VALUE = "";
//
Bundle data = new Bundle();
@Override
public void onCreate(Bundle savedInstanceState) {
try{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//XmlPullParser
XmlPullParser parser = Xml.newPullParser();
// assets Folder dahi xml file-diig unshih
AssetManager asset = getResources().getAssets();
InputStream is = null;
//dialog.xml file neeh
is = asset.open("dialog.xml");
InputStreamReader isr = new InputStreamReader(is);
parser.setInput(isr);

for (int type = parser.getEventType(); type != XmlPullParser.END_DOCUMENT;
type = parser.next()) {
switch(type) {
case XmlPullParser.START_TAG: // start tag
STR_TAG = parser.getName();
break;
case XmlPullParser.TEXT: // tag-n utga
STR_VALUE = parser.getText();
// utga bga esehiig shalgah
if(STR_VALUE.trim().length() != 0) {
// title tag-d bichigdsen utgiig data huvisagchid olgoh
if(STR_TAG.equals("title")) {
data.putString(STR_TITLE, STR_VALUE);
} else if(STR_TAG.equals("msg")) {
//msg tag-d bichigdsen utgiig data huvisagchid olgoh
data.putString(STR_MESSAGE, STR_VALUE);
}
}
break;
case XmlPullParser.END_TAG: // end tag
break;
}
}
//Dialog haruulah
showDialog(DIALOG_FLG, data);
}catch(Exception err){
Log.e("ERROR",err.getMessage());
}
}


@Override
protected Dialog onCreateDialog(int id){
return null;
}

@Override
protected Dialog onCreateDialog(int id, Bundle data){
Dialog dialog = null;
switch(id){
case DIALOG_FLG:
String title = data.getString(STR_TITLE);
String mes = data.getString(STR_MESSAGE);
dialog = new AlertDialog.Builder(this)
.setTitle(title)
.setMessage(mes)
.setPositiveButton("OK", null)
.create();
break;
}

return dialog;
}

@Override
protected void onPrepareDialog(int id,Dialog dialog,Bundle data){
switch(id){
case DIALOG_FLG:
String mes = data.getString(STR_MESSAGE);
AlertDialog ad = (AlertDialog)dialog;
ad.setMessage(mes);
break;
}
}

0 санал,шүүмж:

 

Надад итгэл бий Copyright © 2009 WoodMag is Designed by Ipietoon for Free Blogger Template