2017-11-21 20 views
-1

私はややAndroidの初心者です(多少)、私の使用にコードを適合させるのに問題があります。私はすべて ifステートメントを除いて得た。それはむしろ基本的なことなので、悲しいことです。ListView、Hashmap、&item.get(...)を使用してif文を取得する方法をAndroidで判断する方法は?

私はJSONファイルを解析し、その結果をHashmapを使用してListViewに出力しています。ここまでは順調ですね。私はAlertDialogをハッシュマップの文字列「put」の1つとして配置したいと考えています。ファイン。

しかし、ここでは、タイトル(マップにあるもの)が ".pdf"で終わるかどうか、AlerDialogを表示するよりもではなくであることを確認します。

コード:

public void onItemClick(AdapterView<?> parent, View view, int position, long id) { HashMap<String, String> item = (HashMap<String, String>)  
parent.getItemAtPosition(position); 
String theTitle = item.get("title"); 
String theDesc = item.get("description"); 
String theLink = item.get("link"); 
if (???condition???) { 
     //code I already have 
} else { 
    final AlertDialog.Builder hope = new AlertDialog.Builder(MainActivity.this); 
    hope.setTitle("Description"); 
    hope.setMessage(theDesc); 
    hope.setPositiveButton("DISMISS",new DialogInterface.OnClickListener() { 
     @Override 
     public void onClick(DialogInterface dialog, int which) { 
      dialog.dismiss(); 
      }}); 

    hope.setNegativeButton("",new DialogInterface.OnClickListener() { 
     @Override 
     public void onClick(DialogInterface dialog, int which) { 
      dialog.dismiss(); 
     }}); 
    hope.show(); 
} 

どれ、およびすべて、ヘルプが最もいただければ幸いです!

答えて

0

タイトルにこのような完全なパスがある場合は、.containsメソッドを使用できます。

if(theTitle.contains(".pdf")){ 
    //Do something 
} 

この回答をお寄せください。

+0

うわー。ちょうどうわー。私は一時間以上にわたりあらゆる種類のソリューションを試しましたが、突然これが動作します。ありがとうございました! – Kenyx

+0

よろしくお願いいたします。この回答が役に立ったら、それを受け入れてください。 –

+0

完了。それは本当に悪い質問私は-2を持っている?私は文字通り、**多くの**表現を試してみました(そのほとんどは実際にこのサイトから来たものです)。 theTitle.matches( "(?i)。* pdf。*") – Kenyx

関連する問題