2016-08-03 4 views
1

R.javaに問題があります。私はライブラリを作成し、それは完全にGenymotionで実行されます。次に、ライブラリのaarをメインプロジェクトにコピーします。メインプロジェクトはライブラリのコードにクラッシュしています。ここで

は自分のライブラリーのコードです:

LayoutInflater user = (LayoutInflater)this.mContext.getSystemService("layout_inflater"); 
convertView = user.inflate(layout.item_list_friends, (ViewGroup)null); 

viewHolder = new ListFriendsAdapter.ViewHolder(null); 
viewHolder.imgAvatar = (ImageView)convertView.findViewById(id.imgAvatar); 
viewHolder.textEmail = (TextView)convertView.findViewById(id.textEmail); 
viewHolder.textName = (TextView)convertView.findViewById(id.textName); 
viewHolder.imgFollower = (ImageView)convertView.findViewById(id.imgFollower); 

のAndroid StudioはimgFollowerのIDを生成しません。ここで

public static final class id { 
    public static final int imgAvatar = 0x7f0e00fc; 
    public static final int textEmail = 0x7f0e00fe; 
    public static final int textName = 0x7f0e00fd; 
} 

エラーメッセージが表示される: - XMLのレイアウト/ resourcesフォルダはありません

FATAL EXCEPTION: mainjava.lang.NoSuchFieldError: 
com.nexlesoft.twittermodule.R$id.imgFollower 
+0

これはxmlにありますか?きれいな再構築を試みましたか? –

+0

私はすべてのビルドフォルダを削除し、新しい 'aar'を作成するためにビルドしなおしても、それはまだ動作しません。これは 'imgAvatar'、' textEmail'、 'textName'を作成することができますが、' imgFollower'を作成することができない理由です。 – LuongTruong

答えて

0

Android Studio does not generate the id of imgFollower

まあfindViewById(id.imgFollower);何も生成されません。ここR.javaファイルです。

R.javaにそのリソースがない場合は、XMLにプラス記号がありません。例えば。

android:id="@+id/imgFollower" 

それとも、あなたはリソースのXMLファイルを使用する場合

<?xml version="1.0" encoding="utf-8"?> 
<resources> 
    <item name="imgFollower" type="id"/> 
</resources> 
+0

ありがとうございます。私はそれを試すが、エラーはまだそこにある。私はついにその理由を見つけました。 'xml'レイアウトと同じ名前の別の' aar'ファイルがあります。 – LuongTruong

0

私は理由を見つけます。エラーメッセージが不明です。 IDを見つけることができない理由は、同じ名前の別のaarファイルがあるためです。

解決策は、xmlレイアウトの名前を変更することです。

ありがとうございます。

関連する問題