android69
جمعه 23 اسفند 1392, 17:25 عصر
من لیست ویو رو شخصی سازی کردم چطوری ایتم دلخواه رو بتونم ارسال کنم از طریق اس ام اس یا ایمیل
smemamian
جمعه 23 اسفند 1392, 18:59 عصر
فرض می کنیم برای ارسال اس ام اس می خوای استفاده کنی.
روش کار با توجه به سلیقه می تونه باشه. می تونی واسه هر Item یه تصویر برای اشتراک گذاری بذاری یا می تونی به صورت LongClickListener برای هر item استفاده کنی. من به روش دوم انجام میدم :
lv.setOnItemLongClickListener(new OnItemLongClickListener() {
public boolean onItemLongClick(AdapterView<?> arg0, View arg1,
int pos, long id) {
// TODO Auto-generated method stub
String sms = list.get(pos);
}
});
تا اینجا فقط اون گزینه ای که می خواستیم رو از لیست باتوجه به آتیم انتخابی کشیدیم بیرون و توی متغییر sms ریختیم. حالا 2 تا کار باید انجام بدیم : 1- انتخاب فرستنده 2- ارسال اس ام اس
1- برای انتخاب فرستنده می تونی از توابع زیر استفاده کنی :
public void pickNumber(){
Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
intent.setType(ContactsContract.CommonDataKinds.Ph one.CONTENT_ITEM_TYPE);
startActivityForResult(intent, 1);
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (data != null) {
Uri uri = data.getData();
if (uri != null) {
Cursor c = null;
try {
c = getContentResolver().query(uri, new String[]{
ContactsContract.CommonDataKinds.Phone.NUMBER,
ContactsContract.CommonDataKinds.Phone.TYPE },
null, null, null);
if (c != null && c.moveToFirst()) {
String number = c.getString(0);
int type = c.getInt(1);
showSelectedNumber(type, number);
}
} finally {
if (c != null) {
c.close();
}
}
}
}
}
public void showSelectedNumber(int type, String number) {
Toast.makeText(this, type + ": " + number, Toast.LENGTH_LONG).show();
}
2- ارسال اس ام اس :می تونی از تابع زیر استفاده کنی و این تابع رو جایی فراخوانی می کنی که کاربر، دریافت کننده خودش رو، انتخاب کرده باشه:
private void sendSMS(String phoneNumber, String message)
{
SmsManager sms = SmsManager.getDefault();
sms.sendTextMessage(phoneNumber, null, message, null, null);
}
مجوزها :
<uses-permission android:name="android.permission.READ_CONTACTS" />
<uses-permission android:name="android.permission.SEND_SMS"/>
android69
یک شنبه 17 فروردین 1393, 22:38 عصر
میشه بگی متغییر sms رو کجا استفاده کردی؟
smemamian
یک شنبه 17 فروردین 1393, 23:15 عصر
در واقع توی این مثال، این متغییر محتوای پیام شماست.
وقتی می خواهید تابع sendSMS رو فراخوانی کنید، بــــه
عنوان پارامتر message این تابع، از این متغییر استفـــاده
کنید. (پارامتر اولی هم شماره تلفن فرد هست.)
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.