私のメイン レイアウトには、1 つの編集テキストと 1 つの検索ボタンがあります。テキスト フィールドにユーザー ID を入力してボタンをクリックすると、対応するユーザー ID のプロフィール写真が表示されます。誰でも私を助けてください?
質問する
103 次
1 に答える
1
まず第一に、それは本当に奇妙な方法です(ユーザーIDを入力すると、誰かのユーザーIDをどのように知ることができますか)...最初に友達リストを取得してから、友達ショーのonClick()で画像を表示することをお勧めします。
とにかく、あなたの質問に従って、あなたはこのようなクエリを送る必要があります
Bundle paramsFriends = new Bundle();
paramsFriends.putString("method", "fql.query");
paramsFriends.putString("query", Constants.QUERY_FRIENDS);
/**
* Show the Progress Bar
*/
mProgressBar = new ProgressDialog(this);
mProgressBar.setCancelable(true);
mProgressBar.setMessage("Getting Friend List...");
mProgressBar.setProgressStyle(ProgressDialog.STYLE_SPINNER);
mProgressBar.setProgress(0);
mProgressBar.setMax(100);
mProgressBar.show();
// The fourth param is like an id (state) to distinguish among
// different requests
mAsyncRunner.request(null, paramsFriends, this,
Constants.QUERY_FRIENDS);
`
その後、onComplete()メソッドで後で(注:-私たちのアクティビティはRequestListenerを実装する必要があります):-
public void onComplete(String response, Object state) {
Log.v(" FQLRequestListener = ", "onComplete()");
// friend list
if (state.equals(Constants.QUERY_FRIENDS)) {
Log.v("response", "" + response);
Log.v("state", "" + state);
Log.v("Display ", "Goto the new Activity to show FRIEND LIST");
if (response != null) {
mProgressBar.dismiss();
// response is the JSON respone
// parse it to get the url of the image
// download the pic from the url
// then show it where ever you want
}
}
}
最後に確認してください
Constants.QUERY_FRIENDS = "SELECT uid, name,username,sex,pic_small FROM user WHERE uid IN (SELECT uid2 FROM friend WHERE uid1 = me())";
これにより、友達リスト全体が表示されます。リストにonItemClickListener()を追加し、それに応じてjson応答を解析して正しい写真を表示します。
説明がお役に立てば幸いです。
于 2012-10-03T10:09:13.140 に答える