android写手机的最近联系人,运行不起来,求各位大神帮助

小希0-0 2016-08-12 02:49:12
系统报错说java.lang.NumberFormatException:invalid int :type.
下面贴的是mainactivity的代码

package com.example.havetry;

import java.util.Date;
import java.text.SimpleDateFormat;


import android.os.Bundle;
import android.provider.CallLog;
import android.app.Activity;
import android.database.Cursor;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ListView;
import android.widget.SimpleCursorAdapter;

public class MainActivity extends Activity {

private ListView lvCalls=null;
private Cursor cursor=null;
private Button btnRead=null;


@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
lvCalls=(ListView)super.findViewById(R.id.calllist);


btnRead=(Button)super.findViewById(R.id.read);

btnRead.setOnClickListener(new OnClickListener(){
public void onClick(View v)
{
cursor=MainActivity.this.getContentResolver()
.query(CallLog.Calls.CONTENT_URI,
null,
null,
null,
null);
//通话类型
int callType=Integer.parseInt(CallLog.Calls.TYPE);
String callTypeStr="";
switch (callType) {
case CallLog.Calls.INCOMING_TYPE:
callTypeStr="呼入";
break;
case CallLog.Calls.OUTGOING_TYPE:
callTypeStr="呼出";
break;
case CallLog.Calls.MISSED_TYPE:
callTypeStr="未接";
break;
}
//拨打时间
SimpleDateFormat sdf= new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date callDate=new Date(Long.parseLong(CallLog.Calls.DATE));
String callDateStr=sdf.format(callDate);
//通话时长
int callDuration=Integer.parseInt(CallLog.Calls.DURATION);
int min=callDuration/60;
int sec=callDuration % 60;
String callDurationStr=min+"分 "+sec+"秒";
//
String[] from={CallLog.Calls.CACHED_NAME,CallLog.Calls.NUMBER,callTypeStr
,callDateStr, callDurationStr};
int to[]={R.id.name,R.id.mobile,R.id.type, R.id.date, R.id.duration};

@SuppressWarnings("deprecation")
SimpleCursorAdapter adapter = new SimpleCursorAdapter(
MainActivity.this,
R.layout.calls,
cursor,
from,
to);
lvCalls.setAdapter(adapter);
}
});
}
}
...全文
153 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
小希0-0 2016-08-12
  • 打赏
  • 举报
回复
int callType=Integer.parseInt(CallLog.Calls.TYPE); 我改成了int callType=Integer.parseInt(CallLog.Calls.TYPE.toString); 还是报错java.lang.NumberFormatException:invalid int :type.
ink_s 2016-08-12
  • 打赏
  • 举报
回复
int 。。。。。。。
开发者_android 2016-08-12
  • 打赏
  • 举报
回复
int callType=Integer.parseInt(CallLog.Calls.TYPE); CallLog.Calls.TYPE的值是“type”,当然报错啊。

80,490

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧