私はthis APIを使用してユーザーのフォロワーリストを取得し、そのフォロワーをドキュメントの説明に従ってJSON形式で返します。ここで返されたオブジェクトの抜粋です:あなたが気付いたようTwitterKitを使用してユーザーの完全な情報を取得する
{
"users": [
{
"id": 2960784075,
"id_str": "2960784075",
"name": "Jesus Rafael Abreu M",
"screen_name": "chuomaraver",
"location": "",
"profile_location": null,
"url": null,
"description": "",
"protected": false,
"followers_count": 1,
"friends_count": 101,
"listed_count": 0,
"created_at": "Sun Jan 04 19:58:06 +0000 2015",
.....
.....
"default_profile": true,
"default_profile_image": false,
"following": false,
"follow_request_sent": false,
"notifications": false,
"muting": false
},
.....
.....
],
"next_cursor": 1489467234237774933,
"next_cursor_str": "1489467234237774933",
"previous_cursor": 0,
"previous_cursor_str": "0"
}
は、ユーザーオブジェクトは、プロパティをたくさん持っている、と私はそれらを一つずつ解析 したいかのためにそれを行うためにライブラリを使用していません私。
TwitterKitにはTWTRUserという名前のクラスがあり、ここにはdocumentationがあります。このクラスのオブジェクトを初期化するには、ちょうどこのようなJSON辞書を取るコンストラクタ使用することができます。
let follower = TWTRUser(jsonDictionary: jsonDictionary)
を、私は私に返されるJSONオブジェクトを取得することができます。この方法では、解析され、TWTRUser
オブジェクトを初期化します。
問題は、JSONに記載されているすべてのプロパティが返されてきたdocumentationに記載されているようTWTRUser
が、それだけでこれらの性質を持っていないということです。
ユーザーIDプロパティ
nameプロパティ
スクリーンネームプロパティ
は プロパティ
isProtectedプロパティをisVerified
profileImageURLプロパティ
profileImageMiniURLプロパティ
profileImageLargeURLプロパティ
私はそれがこのような値のキーを取得して返すvalueForKeyメソッドを使用しようとした
formattedScreenNameプロパティ
profileURLプロパティ:
let createdAt = follower.value(forKey: "created_at")
私はそれを考えましたしかし、それはうまくいきませんでした。私は、アプリケーションがクラッシュし、それを使用して、私に次のメッセージ与えた場合:
がキャッチされない例外により「NSUnknownKeyException」にアプリを終了し、 理由:「[valueForUndefinedKeyは:]:このクラス は、キー値コーディング準拠のためではありませんcontributors_enabledキー。
TWTRUser
クラスを使用してすべてのユーザーのプロパティを取得するにはどうすればよいですか?
試したコードを表示しますか? –
'contributors_enabled'を使用したところ –
@AbhishekJain私はTWTRUserの* valueForKey *メソッドを使用しようとしましたが、私は本来の方法でJSONを解析するか、ライブラリを使用することができますが、別の解決策を探す。 –