2017-05-07 208 views
0

我有一个人名姓名列表,每个人都与JSON数据库中的某个电话号码相关联。我试图做到这一点,以便每次点击时都会调用他们的号码。有关如何解决这个问题的任何建议?在清单如何在Android Studio中从列表视图拨打电话?

uses-permission android:name="android.permission.CALL_PHONE" 

import android.content.Intent; 
import android.os.AsyncTask; 
import android.os.Bundle; 
import android.support.v7.app.AppCompatActivity; 
import android.util.Log; 
import android.view.View; 
import android.widget.ListAdapter; 
import android.widget.ListView; 
import android.widget.SimpleAdapter; 
import android.widget.Toast; 
import android.app.ListActivity; 

import android.Manifest; 
import android.content.pm.PackageManager; 
import android.net.Uri; 
import android.support.v4.app.ActivityCompat; 
import android.widget.Button; 




import org.json.JSONArray; 
import org.json.JSONException; 
import org.json.JSONObject; 

import java.util.ArrayList; 
import java.util.HashMap; 

public class MainActivity extends AppCompatActivity { 

    private String TAG = MainActivity.class.getSimpleName(); 
    private ListView lv; 



    ArrayList<HashMap<String, String>> legislatorList; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 



     legislatorList = new ArrayList<>(); 
     lv = (ListView) findViewById(R.id.list); 
     lv.setOnClickListener(new View.OnClickListener() { 
      public void onClick(View arg0) { 
       Intent callIntent = new Intent(Intent.ACTION_CALL); 
       callIntent.setData(Uri.parse("tel:"+phone)); 

       if (ActivityCompat.checkSelfPermission(MainActivity.this, 
         Manifest.permission.CALL_PHONE) != PackageManager.PERMISSION_GRANTED) { 
        return; 
       } 
       startActivity(callIntent); 
      } 
     }); 
    new GetLegislators().execute(); 

} 
+0

尝试在Android应用程序中使用适当的Java语言。 Android Studio只是一个IDE,因此甚至无法在您的手机上运行,​​关于打电话怎么说.... – statosdotcom

回答

0

请求权限调用上使用的ListView itemClick在此代码。

private void dialContactPhone(final String phoneNumber) { 
    Intent intent = new Intent(Intent.ACTION_CALL, Uri.parse("tel:" + "Your Phone_number")); 
    startActivity(intent); 
}