所以,我試圖追加一個ID參數到用戶將被髮送到的URI的末尾,當他點擊我的列表中的一個項目時。我的代碼如下:Uri生成器返回混亂的URI
public void onItemClick(AdapterView<?> parent, View view, int pos, long id) {
Intent i = new Intent(Intent.ACTION_VIEW);
//items.get(pos) returns the UPI needed. Append to http://www.cs.auckland.ac.nz/our_staff/vcard.php?upi=
Uri.Builder b = Uri.parse("http://www.cs.auckland.ac.nz/our_staff/vcard.php?upi=").buildUpon();
b.appendEncodedPath(items.get(pos));
Uri uri = b.build();
i.setData(uri);
Log.d("URL of staff", uri.toString());
activity.startActivity(i);
}
現在,我應該得到以下形式的URI:
http://www.cs.auckland.ac.nz/our_staff/vcard.php?upi=pden001
例如。但logcat的顯示所獲得的URI中實際上
http://www.cs.auckland.ac.nz/our_staff/vcard.php/pden001?upi=
爲什麼它追加pden001
是對中間?
我試過appendPath()
以及相同的結果,在這種情況下Android開發者教程並不是很有幫助。
嘗試'b.appendPath(items.get(POS));'而不是'b.appendEncod edPath(items.get(pos));' – bakriOnFire
是的,我試過appendPath,結果相同 – misaochan