スクリーンショットでわかるように、1月から12月の形式で友達のリストを取得するアプリを書いています
今、私は現在の日付を使用して、今後のFacebookの友達の誕生日の形で表示したいと思います...誰かが私を助けてください...
下の画像のように、私が一番上に友達を作っているのを見ることができます、それらの誕生日は消えました、しかしそれでも私は一番上になっているので、私はちょうど次の誕生日の形でリストを表示したいです
public View getView(int position, View convertView, ViewGroup parent)
{
JSONObject jsonObject = null;
try
{
jsonObject = jsonArray.getJSONObject(position);
} catch (JSONException e) {
}
FriendItem friendItem;
if (convertView == null) {
convertView = mInflater.inflate(R.layout.listfb_friends, null);
friendItem = new FriendItem();
convertView.setTag(friendItem);
} else
{
friendItem = (FriendItem) convertView.getTag();
}
friendItem.friendPicture = (ImageView) convertView
.findViewById(R.id.picture);
friendItem.friendName = (TextView) convertView
.findViewById(R.id.name);
friendItem.friendDob = (TextView) convertView
.findViewById(R.id.dob);
friendItem.friendLayout = (RelativeLayout) convertView
.findViewById(R.id.friend_item);
try
{
String uid = jsonObject.getString("uid");
String url = jsonObject.getString("pic_square");
friendItem.friendPicture.setImageBitmap(picturesGatherer.getPicture(uid, url));
} catch (JSONException e)
{
friendItem.friendName.setText("");
friendItem.friendDob.setText("Birthday Not Mentioned");
}
try
{
friendItem.friendName.setText(jsonObject.getString("name"));
friendItem.friendDob.setText(jsonObject.getString("birthday"));
if(!(jsonObject.getString("birthday").equalsIgnoreCase("null")))
{
friendItem.friendDob.setText(jsonObject.getString("birthday"));
}
else
{
friendItem.friendDob.setText("Birthday Not Added");
}
} catch (JSONException e)
{
friendItem.friendName.setText("");
friendItem.friendDob.setText("");
}
listofshit.put(position, friendItem);
return convertView;
}
レコードを取得するためのクエリ:
String query = "SELECT name, birthday, uid, pic_square FROM user WHERE uid in (SELECT uid2 FROM friend WHERE uid1=me())AND birthday_date >= '01/01' AND birthday_date <= '31/12' ORDER BY birthday_date";
あなたがここで見つけることができる元のコード:
https://github.com/chrtatu/FacebookFriendsList