public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.artistname);
Bundle extras = getIntent().getExtras();
String val = extras.getString("artistname");
//Toast.makeText(getApplicationContext(), val, Toast.LENGTH_LONG).show();
String result = null;
InputStream is = null;
StringBuilder sb = null;
ArrayList<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>();
try{
//http post
HttpClient httpclient = new DefaultHttpClient();
//HttpPost httppost = new HttpPost("http://192.168.0.5/staging/android/get_search_result.php?keyword=Chinna_Mani&format=json");
HttpPost httppost = new HttpPost("http://192.168.0.5/staging/android/get_search_result.php?keyword="+val+"&format=json&flg=1");
//HttpPost httppost = new HttpPost("http://192.168.0.5/staging/android/ilaiyarajawebservice.php?format=xml");
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
HttpResponse response = httpclient.execute(httppost);
HttpEntity entity = response.getEntity();
is = entity.getContent();
}
catch(Exception e){
Toast.makeText(getBaseContext(),e.toString() ,Toast.LENGTH_LONG).show();
}
//Convert response to string
try
{
BufferedReader reader = new BufferedReader(new InputStreamReader(is,"UTF-8"));
sb = new StringBuilder();
String line = null;
while ((line = reader.readLine()) != null)
{
sb.append(line + "n");
}
is.close();
result = sb.toString();
}
catch(Exception e)
{
Toast.makeText(getBaseContext(),e.toString() ,Toast.LENGTH_LONG).show();
}
//END Convert response to string
try{
JSONArray jArray = new JSONArray(result);
JSONObject json_data=null;
for(int i=0;i<jArray.length();i++)
{
json_data = jArray.getJSONObject(i);
r.add(json_data.getString("artistfirstname"));
// r.add(json_data.getString("file_name")+json_data.getString("artist_name") +json_data.getString("album_name"));
}
}
catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
finally {
Cursor cursor = getContentResolver().query(MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, null, null, null, null);
if(null != cursor)
{
cursor.moveToFirst();
setListAdapter(new ArrayAdapter<String>(this,R.layout.custom_list_item, r));
}
else{
//我想要这样,我在这里开发警报消息 找不到播放列表
System.out.println("playlist not found");
}
}
}
我需要帮助,如果值r
有内容然后显示,如果没有内容,那么我想设置警报"找不到列表"如何实现? 我尝试使用其他但不成功。
if(null != cursor && cursor.getCount()>0 )//check cursor is not null and having atleast 1 data
{
cursor.moveToFirst();
setListAdapter(new ArrayAdapter<String>(this,R.layout.custom_list_item, r));
//do your operation with content
}
else
//show alert here i.e. no list found
你只需要检查游标,如果游标至少有一个数据,那么尝试移动到第一条记录,因为如果有第一条记录,cursor.moveToFirst()
返回boolean
值,否则 True 否则 False,您可以直接使用它来检查游标是否已获取数据,如下所示。
if(cursor.moveToFirst())
{
//Populate Contents
}
else
{
//No Contents Found
}
if(null != cursor)
{
//other work......
if (cursor.getCount () > 0 )
{
//show alert
}
else
{
cursor.moveToFirst();
setListAdapter(new ArrayAdapter<String>(this,R.layout.custom_list_item, r));
}
if(r.size()>0){
Cursor cursor = getContentResolver().query(MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, null, null, null, null);
if(null != cursor)
{
cursor.moveToFirst();
setListAdapter(new ArrayAdapter<String>(this,R.layout.custom_list_item, r));
//here I need help the value are having content means display, if not have content means I want set alert no list found how? I will try else but not success.
}
}else{
您可以通过创建对话框来显示警报她,并告诉用户列表为空,用于创建对话框,您可以参考最佳链接。
}
刚刚添加了检查 arraylist 是否包含元素,如果没有,那么您可以通过 Toast 或对话框显示警报,因为我提供了它的链接。--------------------------这是你的问题解决方案-------------------------------------------
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.artistname);
Bundle extras = getIntent().getExtras();
String val = extras.getString("artistname");
//Toast.makeText(getApplicationContext(), val, Toast.LENGTH_LONG).show();
String result = null;
InputStream is = null;
StringBuilder sb = null;
ArrayList<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>();
try{
//http post
HttpClient httpclient = new DefaultHttpClient();
//HttpPost httppost = new HttpPost("http://192.168.0.5/staging/android/get_search_result.php?keyword=Chinna_Mani&format=json");
HttpPost httppost = new HttpPost("http://192.168.0.5/staging/android/get_search_result.php?keyword="+val+"&format=json&flg=1");
//HttpPost httppost = new HttpPost("http://192.168.0.5/staging/android/ilaiyarajawebservice.php?format=xml");
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
HttpResponse response = httpclient.execute(httppost);
HttpEntity entity = response.getEntity();
is = entity.getContent();
}
catch(Exception e){
Toast.makeText(getBaseContext(),e.toString() ,Toast.LENGTH_LONG).show();
}
//Convert response to string
try
{
BufferedReader reader = new BufferedReader(new InputStreamReader(is,"UTF-8"));
sb = new StringBuilder();
String line = null;
while ((line = reader.readLine()) != null)
{
sb.append(line + "n");
}
is.close();
result = sb.toString();
}
catch(Exception e)
{
Toast.makeText(getBaseContext(),e.toString() ,Toast.LENGTH_LONG).show();
}
//END Convert response to string
try{
JSONArray jArray = new JSONArray(result);
JSONObject json_data=null;
for(int i=0;i<jArray.length();i++)
{
json_data = jArray.getJSONObject(i);
r.add(json_data.getString("artistfirstname"));
// r.add(json_data.getString("file_name")+json_data.getString("artist_name") +json_data.getString("album_name"));
}
}
catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
finally {
if(r.size()>0){
Cursor cursor = getContentResolver().query(MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, null, null, null, null);
if(null != cursor)
{
cursor.moveToFirst();
setListAdapter(new ArrayAdapter<String>(this,R.layout.custom_list_item, r));
}
}else{
Toast.makeToast(getApplicationcontext(),"no Records ...", Toast.SHORT).show();
}
}
}
希望这个解释对你有用..赞赏