第三十七枪(ListView中点击button跳转到拨号界面实例)

最近讨论了一个项目需求,在ListView的Item中放置了一个类似电话的图标,,点击图标可以将号码调到拨号界面。实现起来很是容易,原理也易懂,较为实用,项目中有需要的可以直接引入。 我模拟了一个简单的demo.代码如下: 1.ListAdapter.java:

package com.example.listviewphone;import java.util.List;import android.content.Context;import android.content.Intent;import android.net.Uri;import android.view.LayoutInflater;import android.view.View;import android.view.View.OnClickListener;import android.view.ViewGroup;import android.widget.BaseAdapter;import android.widget.TextView;{private List<Test> tests;private Context context;LayoutInflater layoutInflater;public ListAdapter(Context context,List<Test> tests){this.tests=tests;this.context=context;layoutInflater=LayoutInflater.from(context);}() {return tests.size();}@Overridepublic Object getItem(int position) {return tests.get(position);}(int position) {return position;}position, View convertView, ViewGroup parent) {ViewHolder viewHolder=null;if(convertView==null){viewHolder=new ViewHolder();convertView=layoutInflater.inflate(R.layout.item_list, null);viewHolder.mTitleLisTextView=(TextView)convertView.findViewById(R.id.tv_title_list);viewHolder.mPhoneTextView=(TextView)convertView.findViewById(R.id.tv_phone_list);convertView.setTag(viewHolder);}else {viewHolder=(ViewHolder) convertView.getTag();}viewHolder.mTitleLisTextView.setText(tests.get(position).getTitle_lost());viewHolder.mPhoneTextView.setText(tests.get(position).getPhone_lost());viewHolder.mPhoneTextView.setOnClickListener(new OnClickListener() {(View v) {// Intent intent = new Intent(Intent.ACTION_CALL,Uri.parse(“tel:”+tests.get(position).getPhone_lost())); //直接拨打电话,较为暴利,慎用!Intent intent = new Intent(Intent.ACTION_DIAL,Uri.parse(“tel:”+tests.get(position).getPhone_lost())); //跳转到用户界面较为温和,推荐使用!context.startActivity(intent);}});return convertView;}class ViewHolder {private TextView mPhoneTextView;private TextView mTitleLisTextView;ViewHolder() {}}}

2.javabean—Test.java:

package com.example.listviewphone;public class Test { private String content_test; private String phone_test; private String title_test; private String username;public String getContent_test() {return content_test;}(String content_test) {this.content_test = content_test;}public String getPhone_test() {return phone_test;}(String phone_test) {this.phone_test = phone_test;}public String getTitle_test() {return title_test;}(String title_test) {this.title_test = title_test;}public String getUsername() {return username;}(String username) {this.username = username;}}

3.MainActivity.java:

package com.example.listviewphone;import java.util.ArrayList;import java.util.List;import javax.security.auth.PrivateCredentialPermission;import android.app.Activity;import android.os.Bundle;import android.view.Menu;import android.view.MenuItem;import android.view.Window;import android.widget.ListView;{private ListView mListView;private ListAdapter adapter;private List<Test> tests;(Bundle savedInstanceState) {super.onCreate(savedInstanceState);requestWindowFeature(Window.FEATURE_NO_TITLE);setContentView(R.layout.activity_main);mListView=(ListView)findViewById(R.id.listview);initDatas();adapter=new ListAdapter(this, tests);mListView.setAdapter(adapter);}() {tests=new ArrayList<Test>();for (int i = 0; i < 30; i++) {Test test =new Test();test.setTitle_test(“电话”);test.setPhone_test(“123456789″+i);tests.add(test);}}}

下面是简单的两个布局文件: 1.activity_main.xml:

==”match_parent” ><ListView=”wrap_content” /></RelativeLayout>

2.item_list.xml:

===”#ffffff”android:orientation=”horizontal” ><TextView==”true”></TextView><TextView====>也许不是自己该去发挥的地方,还是让自己到最适合自己战斗的方面去吧!勇敢的接受自己的失败,

第三十七枪(ListView中点击button跳转到拨号界面实例)

相关文章:

你感兴趣的文章:

标签云: