Hi,
I have a problem with these libraries and Butterknife recently.
compile 'com.android.support:appcompat-v7:23.1.0'
compile 'com.android.support:design:23.1.0'
compile 'com.android.support:support-v13:23.1.0'
If i use the above libraries with version 23.1.0 butterknife seems to fail in binding the views.
But if i use the lower version of the same libraries as below, Butterknife works perfectly.
Is there something that i am missing to do or add in gradle.
compile 'com.android.support:appcompat-v7:23.0.1'
compile 'com.android.support:design:23.0.1'
compile 'com.android.support:support-v13:23.0.1'
You haven't provided any information as to what isn't working, what you
bindings looks like, and what your layout looks like.
On Mon, Nov 9, 2015, 10:59 PM Rajiv Singh [email protected] wrote:
Hi,
I have a problem with these libraries and Butterknife recently.
compile 'com.android.support:appcompat-v7:23.1.0'
compile 'com.android.support:design:23.1.0'
compile 'com.android.support:support-v13:23.1.0'If i use the above libraries with version 23.1.0 butterknife seems to fail
in binding the views.But if i use the lower version of the same libraries as below, Butterknife
works perfectly.
Is there something that i am missing to do or add in gradle.compile 'com.android.support:appcompat-v7:23.0.1'
compile 'com.android.support:design:23.0.1'
compile 'com.android.support:support-v13:23.0.1'—
Reply to this email directly or view it on GitHub
https://github.com/JakeWharton/butterknife/issues/406.
11-10 10:09:23.573 20796-20796/com.playtm.android.lyfe_client E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.playtm.android.lyfe_client, PID: 20796
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.playtm.android.lyfe_client/com.playtm.android.lyfe_client.ui.modules.home.activities.Home}: java.lang.RuntimeException: Unable to bind views for com.playtm.android.lyfe_client.ui.modules.home.activities.Home
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3155)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3263)
at android.app.ActivityThread.access$1000(ActivityThread.java:197)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1687)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:145)
at android.app.ActivityThread.main(ActivityThread.java:6897)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1404)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1199)
Caused by: java.lang.RuntimeException: Unable to bind views for com.playtm.android.lyfe_client.ui.modules.home.activities.Home
at butterknife.ButterKnife.bind(ButterKnife.java:193)
at butterknife.ButterKnife.bind(ButterKnife.java:124)
at com.playtm.android.lyfe_client.ui.modules.home.activities.Home.onCreate(Home.java:83)
at android.app.Activity.performCreate(Activity.java:6550)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1120)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3108)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3263)Â
at android.app.ActivityThread.access$1000(ActivityThread.java:197)Â
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1687)Â
at android.os.Handler.dispatchMessage(Handler.java:102)Â
at android.os.Looper.loop(Looper.java:145)Â
at android.app.ActivityThread.main(ActivityThread.java:6897)Â
at java.lang.reflect.Method.invoke(Native Method)Â
at java.lang.reflect.Method.invoke(Method.java:372)Â
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1404)Â
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1199)Â
Caused by: java.lang.IllegalStateException: Required view 'imgUserProfile' with ID 2131886643 for field 'mImgUserProfilePic' was not found. If this view is optional add '@Nullable' (fields) or '@Optional' (methods) annotation.
at butterknife.internal.Finder.findRequiredView(Finder.java:51)
at com.playtm.android.lyfe_client.ui.modules.home.activities.Home$$ViewBinder.bind(Home$$ViewBinder.java:16)
at com.playtm.android.lyfe_client.ui.modules.home.activities.Home$$ViewBinder.bind(Home$$ViewBinder.java:10)
at butterknife.ButterKnife.bind(ButterKnife.java:191)
at butterknife.ButterKnife.bind(ButterKnife.java:124)Â
at com.playtm.android.lyfe_client.ui.modules.home.activities.Home.onCreate(Home.java:83)Â
at android.app.Activity.performCreate(Activity.java:6550)Â
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1120)Â
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3108)Â
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3263)Â
at android.app.ActivityThread.access$1000(ActivityThread.java:197)Â
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1687)Â
at android.os.Handler.dispatchMessage(Handler.java:102)Â
at android.os.Looper.loop(Looper.java:145)Â
at android.app.ActivityThread.main(ActivityThread.java:6897)Â
at java.lang.reflect.Method.invoke(Native Method)Â
at java.lang.reflect.Method.invoke(Method.java:372)Â
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1404)Â
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1199)Â
I get the above error for my home activity
Following is the code for the same
public class Home extends AppCompatActivity implements HomeView, View.OnClickListener {
private static final String TAG = "Home Activity";
private static final String PREFERENCES_FILE = "LYFE";
private static final String PREF_USER_LEARNED_DRAWER = "userLearnedDrawer";
private BaseCore baseCore = BaseCore.getInstance();
private HomePresenter homePresenter;
private HashMap<Long, Event> eventMap;
private HashMap<Long, ArrayList<Long>> eventByCategoryMap;
@Bind(R.id.drawerLayout)
DrawerLayout mDrawerLayout;
@Bind(R.id.imgUserProfile)
ImageView mImgUserProfilePic;
@Bind(R.id.imgUserCover)
ImageView mImgUserCover;
@Bind(R.id.txtUserName)
TextView mTxtUserName;
@Bind(R.id.txtUserEmail)
TextView mTextUserEmail;
@Bind(R.id.navigation_view)
NavigationView mNavigationView;
@Bind(R.id.activity_home_viewPager)
MaterialViewPager mViewPager;
private User mUser;
private HomeAdapter mHomeAdapter;
private ArrayList<EventCategory> eventCategories;
private Integer activePage = null;
private BroadcastReceiver mDeepLinkReceiver=null;
private boolean mUserLearnedDrawer;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_home);
ButterKnife.bind(this);
if (savedInstanceState != null) {
activePage = savedInstanceState.getInt("activePage");
}else{
// No savedInstanceState, so it is the first launch of this activity
Intent intent = getIntent();
if(intent!=null){
if (AppInviteReferral.hasReferral(intent)) {
Log.d(TAG,"Launching from oncreate");
// In this case the referral data is in the intent launching the MainActivity,
// which means this user already had the app installed. We do not have to
// register the Broadcast Receiver to listen for Play Store Install information
baseCore.setReferralIntent(intent);
//launchDeepLinkActivity(intent);
}else if(Intent.ACTION_VIEW.equals(intent.getAction()) && intent.getDataString()!=null){
baseCore.setBrowserReferralIntent(intent);
}
}
}
launchIntroActivity();
Toolbar toolbar = mViewPager.getToolbar();
mUser = baseCore.getUser();
if (toolbar != null) {
setSupportActionBar(toolbar);
ActionBar actionBar = getSupportActionBar();
actionBar.setHomeAsUpIndicator(R.drawable.ic_menu);
actionBar.setDisplayHomeAsUpEnabled(true);
actionBar.setTitle("");
toolbar.setNavigationOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
mDrawerLayout.openDrawer(GravityCompat.START);
}
});
}
setupNavDrawer();
homePresenter = new HomePresenter(this);
}
private void setupNavDrawer() {
if (mUser != null) {
try {
mTxtUserName.setText(mUser.getUsrName());
if (mUser.getUsrCoverImgURL() != null && !mUser.getUsrCoverImgURL().isEmpty()) {
Glide.with(getContext()).load(mUser.getUsrCoverImgURL()).diskCacheStrategy(DiskCacheStrategy.ALL).into(mImgUserCover);
}
if (mUser.getUsrImgURL() != null && !mUser.getUsrImgURL().isEmpty()) {
Glide.with(getContext()).load(mUser.getUsrImgURL()).diskCacheStrategy(DiskCacheStrategy.ALL).into(mImgUserProfilePic);
}
mTextUserEmail.setText(mUser.getUsrEmail());
} catch (Exception e) {
Log.e(TAG, "Error in setting up nav drawer " + e.getMessage());
}
}
mNavigationView.setNavigationItemSelectedListener(new NavigationView.OnNavigationItemSelectedListener() {
@Override
public boolean onNavigationItemSelected(MenuItem menuItem) {
switch (menuItem.getItemId()) {
case R.id.nav_coins:
mDrawerLayout.closeDrawers();
//startActivity(new Intent(getContext(), CoinsActivity.class));
break;
case R.id.nav_friends:
mDrawerLayout.closeDrawers();
/*startActivityForResult(Games.Leaderboards.getLeaderboardIntent(mGoogleApiClient,
getResources()
.getString(R.string.leaderboard_1)), REQUEST_LEADERBOARD);*/
// startActivity(new Intent(getContext(),FriendsActivity.class));
break;
case R.id.nav_achievements:
mDrawerLayout.closeDrawers();
//startActivity(new Intent(this.getActivity(), AchievementsActivity.class));
//startActivityForResult(Games.Achievements.getAchievementsIntent(mGoogleApiClient), REQUEST_ACHIEVEMENTS);
break;
case R.id.nav_notifications:
mDrawerLayout.closeDrawers();
//startActivity(new Intent(getContext(), NotificationsActivity.class));
break;
case R.id.nav_topEvents:
mDrawerLayout.closeDrawers();
/*Intent intentT = new Intent(getContext(), FilterEventsActivity.class);
intentT.putExtra("tag", TOPEVENTS);
startActivity(intentT);*/
// finish();
break;
case R.id.nav_myEvents:
mDrawerLayout.closeDrawers();
Intent intentM = new Intent(getContext(), MyEvents.class);
startActivity(intentM);
// finish();
break;
case R.id.nav_latestEvents:
mDrawerLayout.closeDrawers();
/* Intent intentLA = new Intent(getContext(), FilterEventsActivity.class);
intentLA.putExtra("tag", LATESTEVENTS);
startActivity(intentLA);*/
// finish();
break;
case R.id.nav_featuredEvents:
mDrawerLayout.closeDrawers();
/* Intent intentF = new Intent(getContext(), FilterEventsActivity.class);
intentF.putExtra("tag", FEATUREDEVENTS);
startActivity(intentF);*/
// finish();
break;
case R.id.nav_settings:
mDrawerLayout.closeDrawers();
Intent intentS = new Intent(getContext(), Settings.class);
startActivity(intentS);
break;
default:
return true;
}
return true;
}
});
mUserLearnedDrawer = Boolean.valueOf(readSharedSetting(this, PREF_USER_LEARNED_DRAWER, "false"));
if (!mUserLearnedDrawer && baseCore.isIntroShown() ) {
mDrawerLayout.openDrawer(GravityCompat.START);
mUserLearnedDrawer = true;
saveSharedSetting(this, PREF_USER_LEARNED_DRAWER, "true");
}
}
@Override
public void onStart(){
super.onStart();
registerDeepLinkReceiver();
homePresenter.start();
}
@Override
public void onStop(){
super.onStop();
unregisterDeepLinkReceiver();
homePresenter.stop();
}
private void launchIntroActivity() {
if(!baseCore.isIntroShown()){
startActivity(new Intent(this, Intro.class));
finish();
}else if(baseCore.getReferralIntent()!=null){
Intent intent = baseCore.getReferralIntent();
baseCore.setReferralIntent(null);//nullify the intent
launchDeepLinkActivity(intent);
}else if(baseCore.getBrowserReferralIntent()!=null){
Intent intent = baseCore.getBrowserReferralIntent();
baseCore.setBrowserReferralIntent(null);//nullify the intent
launchDeepLinkActivity(intent);
}
}
@Override
protected void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
if(activePage !=null){
outState.putInt("activePage", activePage);
}else{
outState.putInt("activePage", 0);
}
}
@Override
public void onRestoreInstanceState(Bundle savedInstanceState) {
// Always call the superclass so it can restore the view hierarchy
super.onRestoreInstanceState(savedInstanceState);
// Restore state members from saved instance
activePage = savedInstanceState.getInt("activePage");
}
@Override
public void showEventCategories() {
FirebaseHelper.getInstance().setOnLinePresence(baseCore.getUser());
mHomeAdapter = new HomeAdapter(getFragmentManager(), eventCategories,eventMap,eventByCategoryMap);
mHomeAdapter.notifyDataSetChanged();
ViewPager viewPager = mViewPager.getViewPager();
viewPager.setAdapter(mHomeAdapter);
mViewPager.getPagerTitleStrip().setViewPager(viewPager);
mViewPager.getPagerTitleStrip().setIndicatorColor(Color.parseColor(eventCategories.get(0).getCatColor()));
mViewPager.getPagerTitleStrip().setTextColor(Color.WHITE);
if(activePage!=null){
//mViewPager.getViewPager().setCurrentItem(activePage);
}
mViewPager.getPagerTitleStrip().setOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageScrolled(int i, float v, int i1) {
}
@Override
public void onPageSelected(int i) {
activePage = i;
mViewPager.getPagerTitleStrip().setIndicatorColor(Color.parseColor(eventCategories.get(i).getCatColor()));
}
@Override
public void onPageScrollStateChanged(int i) {
}
});
mViewPager.setMaterialViewPagerListener(new MaterialViewPager.Listener() {
@Override
public HeaderDesign getHeaderDesign(int page) {
return HeaderDesign.fromColorAndUrl(
Color.parseColor(eventCategories.get(page).getCatColor()),
eventCategories.get(page).getCatImgUrl());
}
});
}
@Override
public HashMap<Long, Event> getEventMap() {
return eventMap;
}
@Override
public HashMap<Long, ArrayList<Long>> getEventByCategoryMap() {
return eventByCategoryMap;
}
@Override
public void setEventMap(HashMap<Long, Event> eventMap) {
this.eventMap = eventMap;
}
@Override
public void setEventByCategoryMap(HashMap<Long, ArrayList<Long>> eventByCategoryMap) {
this.eventByCategoryMap = eventByCategoryMap;
}
@Override
public ArrayList<EventCategory> getEventCategories() {
return eventCategories;
}
@Override
public void setEventCategories(ArrayList<EventCategory> eventCategories) {
this.eventCategories = eventCategories;
}
@Override
public Context getContext() {
return this;
}
@Override
public void onClick(View v) {
}
/**
* There are two broadcast receivers in this application. The first is ReferrerReceiver, it
* is a global receiver declared in the manifest. It receives broadcasts from the Play Store
* and then broadcasts messages to the local broadcast receiver, which is registered here.
* Since the broadcast is asynchronous, it can occur after the app has started, so register
* for the notification immediately in onStart. The Play Store broadcast should be very soon
* after the app is first opened, so this receiver should trigger soon after start
*/
// [START register_unregister_launch]
private void registerDeepLinkReceiver() {
// Create local Broadcast receiver that starts DeepLinkActivity when a deep link
// is found
mDeepLinkReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
if (AppInviteReferral.hasReferral(intent)) {
Log.d(TAG,"Calling from Broadcast reciever");
launchDeepLinkActivity(intent);
}
}
};
IntentFilter intentFilter = new IntentFilter(getString(R.string.action_deep_link));
LocalBroadcastManager.getInstance(this).registerReceiver(
mDeepLinkReceiver, intentFilter);
}
private void unregisterDeepLinkReceiver() {
if (mDeepLinkReceiver != null) {
LocalBroadcastManager.getInstance(this).unregisterReceiver(mDeepLinkReceiver);
}
}
/**
* Launch DeepLinkActivity with an intent containing App Invite information
*/
private void launchDeepLinkActivity(Intent intent) {
Log.d(TAG, "launchDeepLinkActivity:" + intent);
Intent newIntent = new Intent(intent).setClass(this, Deeplink.class);
startActivity(newIntent);
finish();
}
// [END register_unregister_launch]
public static void saveSharedSetting(Context ctx, String settingName, String settingValue) {
SharedPreferences sharedPref = ctx.getSharedPreferences(PREFERENCES_FILE, Context.MODE_PRIVATE);
SharedPreferences.Editor editor = sharedPref.edit();
editor.putString(settingName, settingValue);
editor.apply();
}
public static String readSharedSetting(Context ctx, String settingName, String defaultValue) {
SharedPreferences sharedPref = ctx.getSharedPreferences(PREFERENCES_FILE, Context.MODE_PRIVATE);
return sharedPref.getString(settingName, defaultValue);
}
}
Following is the layout
<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.DrawerLayout
android:id="@+id/drawerLayout"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
android:layout_height="match_parent" android:fitsSystemWindows="true"
tools:context="com.playtm.android.lyfe_client.ui.modules.home.activities.Home">
<include layout="@layout/content_home" />
<android.support.design.widget.NavigationView
android:id="@+id/navigation_view"
android:layout_height="match_parent"
android:layout_width="wrap_content"
android:layout_gravity="start"
app:headerLayout="@layout/nav_header"
app:menu="@menu/nav_menu"
/>
</android.support.v4.widget.DrawerLayout>
Following is the navigation view header layout
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="200dp">
<ImageView
android:id="@+id/imgUserCover"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scaleType="centerCrop"
android:src="@drawable/awesome" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="bottom"
android:background="@drawable/gradient_dark"
android:gravity="bottom"
android:orientation="vertical">
<TextView
android:id="@+id/txtUserName"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="bottom"
android:fontFamily="sans-serif-light"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_vertical_margin"
android:textColor="#FFF"
android:textSize="25sp" />
<TextView
android:id="@+id/txtUserEmail"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="left"
android:fontFamily="sans-serif-light"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_vertical_margin"
android:textColor="#FFF"
android:textSize="15sp" />
</LinearLayout>
<!--
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/editProfile"
android:layout_gravity="right"
android:paddingTop= "@dimen/activity_vertical_margin"
android:paddingRight="@dimen/activity_vertical_margin"
android:src="@drawable/ic_action_edit" />-->
<de.hdodenhof.circleimageview.CircleImageView
android:id="@+id/imgUserProfile"
android:layout_width="70dp"
android:layout_height="70dp"
android:layout_marginLeft="16dp"
android:layout_marginTop="38dp"
/>
</FrameLayout>
Following is the nave menu layout
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<group
android:id="@+id/maingrp"
android:checkableBehavior="single">
<item
android:id="@+id/nav_games"
android:icon="@drawable/ic_games_black_24dp"
android:title="@string/navItemGames" />
<item
android:id="@+id/nav_achievements"
android:icon="@drawable/ic_achievements"
android:title="@string/navItemAchievements" />
<item
android:id="@+id/nav_coins"
android:icon="@drawable/ic_coins"
android:title="@string/navItemCoins" />
<item
android:id="@+id/nav_orbits"
android:icon="@drawable/ic_orbitz"
android:title="@string/navItemOrbits" />
<item
android:id="@+id/nav_friends"
android:icon="@drawable/ic_friends"
android:title="@string/navItemFriends" />
<item
android:id="@+id/nav_interests"
android:icon="@drawable/ic_interest"
android:title="@string/navItemInterests" />
<item
android:id="@+id/nav_notifications"
android:icon="@drawable/ic_notifications_black_24dp"
android:title="@string/navItemNotification" />
<item android:title="Events">
<menu>
<item
android:id="@+id/nav_topEvents"
android:icon="@drawable/ic_top"
android:title="@string/navTopEvents" />
<item
android:id="@+id/nav_myEvents"
android:icon="@drawable/ic_personal"
android:title="@string/navMyEvents" />
<item
android:id="@+id/nav_featuredEvents"
android:icon="@drawable/ic_featured"
android:title="@string/navFeaturedEvents" />
<item
android:id="@+id/nav_latestEvents"
android:icon="@drawable/ic_new"
android:title="@string/navLatestEvents" />
</menu>
</item>
</group>
<group
android:id="@+id/settingGrp"
android:checkableBehavior="single">
<item
android:id="@+id/nav_settings"
android:icon="@drawable/ic_settings_black_24dp"
android:title="@string/navSettings" />
<item
android:id="@+id/nav_help"
android:icon="@drawable/ic_help_black_24dp"
android:title="@string/navHelp" />
</group>
</menu>
Following is the build gradle dependencies
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
testCompile 'junit:junit:4.12'
compile('com.crashlytics.sdk.android:crashlytics:2.5.2@aar') {
transitive = true;
}
compile('com.github.florent37:materialviewpager:1.1.2@aar') {
transitive = true
}
compile('cn.trinea.android.view.autoscrollviewpager:android-auto-scroll-view-pager:1.1.2') {
exclude module: 'support-v4'
}
compile('com.twitter.sdk.android:twitter:1.9.0@aar') {
transitive = true;
}
compile('com.adobe.creativesdk:image:4.0.0') {
exclude group: 'com.squareup.okhttp';
}
compile('com.crashlytics.sdk.android:crashlytics-ndk:1.1.1@aar') {
transitive = true;
}
compile('com.thomashaertel:multispinner:0.1.1@aar') {}
compile('com.afollestad.material-dialogs:core:0.8.2.0@aar') {
transitive = true
}
compile('com.afollestad.material-dialogs:commons:0.8.2.0@aar') {
transitive = true
}
apt 'com.jakewharton:butterknife-compiler:8.0.0-SNAPSHOT'
compile 'com.facebook.android:facebook-android-sdk:4.7.0'
compile 'com.android.support:appcompat-v7:23.1.0'
compile 'com.android.support:design:23.1.0'
compile 'com.android.support:multidex:1.0.1'
compile 'com.android.support:support-v13:23.1.0'
compile 'com.github.paolorotolo:appintro:3.2.0'
compile 'com.squareup:otto:1.3.8'
compile 'com.firebase:firebase-client-android:2.4.0'
compile 'com.firebaseui:firebase-ui:0.2.2'
compile 'com.squareup.retrofit:retrofit:2.0.0-beta1'
compile 'com.squareup.retrofit:converter-gson:2.0.0-beta1'
compile 'com.jakewharton:butterknife:8.0.0-SNAPSHOT'
compile 'com.github.bumptech.glide:glide:3.6.1'
compile 'de.hdodenhof:circleimageview:2.0.0'
compile 'me.relex:circleindicator:1.1.5@aar'
compile 'com.oguzdev:CircularFloatingActionMenu:1.0.2'
compile 'com.commonsware.cwac:cam2:0.3.+'
compile 'com.adobe.creativesdk.foundation:auth:0.5.3'
compile 'com.squareup.okhttp:okhttp-urlconnection:2.5.0'
compile 'com.malmstein:fenster:0.0.1'
compile 'com.google.android.gms:play-services:8.3.0'
compile 'com.google.apis:google-api-services-youtube:v3-rev151-1.20.0'
compile 'com.google.api-client:google-api-client-android:1.20.0'
compile 'com.bowyer.app:fabtransitionlayout:0.2.0@aar'
compile 'com.github.ozodrukh:CircularReveal:1.1.1@aar'
compile 'com.borax12.materialdaterangepicker:library:1.2'
compile 'com.cloudinary:cloudinary-android:1.2.2'
compile 'com.sothree.slidinguppanel:library:3.2.0'
compile 'com.github.AndroidDeveloperLB:MaterialPreferenceLibrary:5'
compile 'com.android.support:support-v4:23.1.0'
I get this issue as per my problem stated above.
This is actually an issue with NavigationView rather than Butterknife.
I created a work around like this utilizing Butterknife:
ButterKnife.bind(this);
// navigationView uses bind annotation - remember to remove the app:headerLayout from xml
View navigationHeader = navigationView.inflateHeaderView(R.layout.navigation_header);
accountImage = ButterKnife.findById(navigationHeader, R.id.account_image);
accountName = ButterKnife.findById(navigationHeader, R.id.account_name);
Most helpful comment
I created a work around like this utilizing Butterknife: