Android的:如何在ListView插入一个呼叫按钮 [英] Android: How to insert a call button in a Listview
本文介绍了Android的:如何在ListView插入一个呼叫按钮的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有三视图列表视图
1)ImageView的
2)的TextView
3)按钮
I have a listView with 3 Views 1) ImageView 2) TextView 3) Button
我想提出的是,当我点击一个按钮,它就会被触发,并调用特定的人。
电话号码存储在strings.xml档案作为
What I want to make is that when I click on a button, it gets triggered and call to the specific person. Telephone numbers are stored in strings.xml file as
<string-array name="telePhoneNummber">
<item>123</item>
<item>8765</item>
<item>565767</item>
</string-array>
这是我的适配器类。
And here is my Adapter Class.
public class MoviesAdapter extends ArrayAdapter {
List list = new ArrayList();
public MoviesAdapter(Context context, int resource) {
super(context, resource);
}
static class DataHandler {
ImageView Poster;
TextView title;
Button telePhone;
}
@Override
public void add(Object object) {
super.add(object);
list.add(object);
}
@Override
public int getCount() {
return this.list.size();
}
@Override
public Object getItem(int position) {
return this.list.get(position);
}
@Override
public View getView(int position, View convertView, final ViewGroup parent) {
View row;
row = convertView;
DataHandler handler;
if (convertView == null) {
LayoutInflater inflater = (LayoutInflater) this.getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
row = inflater.inflate(R.layout.row_layout, parent, false);
handler = new DataHandler();
handler.Poster = (ImageView) row.findViewById(R.id.movie_poster);
handler.title = (TextView) row.findViewById(R.id.movie_title);
handler.telePhone = (Button) row.findViewById(R.id.btn_call);
row.setTag(handler);
} else {
handler = (DataHandler) row.getTag();
}
MovieDataProvider dataProvider;
dataProvider = (MovieDataProvider) this.getItem(position);
handler.Poster.setImageResource(dataProvider.getMovie_poster_resource());
handler.title.setText(dataProvider.getMovie_title());
handler.telePhone.setText(dataProvider.getTelePhone());
return row;
}
}
不要在命名约定注意请。
Don't pay attention on the naming convention please.
推荐答案
写您的点击监听ListView和打开手机拨号程序是这样的:
Write your Listview on click listener and open the phone Dialer like this:
listView.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
String[] numberArray= context.getResources().getStringArray(R.array.telePhoneNummber); // get array from strings.xml
// launch dialer with pre-filled phone number
Intent phoneDialerIntent= new Intent(Intent.ACTION_DIAL);
phoneDialerIntent.setData(Uri.parse("tel:" + numberArray[position]));
startActivity(phoneDialerIntent);
}
});
这篇关于Android的:如何在ListView插入一个呼叫按钮的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文