我使用butterknife库完美地注入了视图.但是当我尝试实现监听器时,例如onclick我无法实现它们.以下java代码将帮助您了解我的问题.
Java代码:
public class LoginActivity extends ActionBarActivity{
@InjectView(R.id.toolbar) Toolbar toolbar;
@InjectView(R.id.btn_login) Button login;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.login);
ButterKnife.inject(this);
initialize();
//initListeners();
@OnClick(R.id.btn_login)
public void submit(View view) {
// TODO submit data to server...
}
}
/*private void initListeners() {
@OnClick(R.id.btn_login)
public void login(){
}
}*/
private void initialize() {
setSupportActionBar(toolbar);
getSupportActionBar().setIcon(R.drawable.toolbar_icon);
getSupportActionBar().setTitle(null);
getSupportActionBar().setDisplayShowHomeEnabled(true);
}
}
Run Code Online (Sandbox Code Playgroud)
告诉我它为什么会这样.代码有什么问题吗?我已经使用以下URL配置了与ButterKnife兼容的IDE.
http://stackoverflow.com/questions/27754811/onclick-is-not-working-in-implementation-of-butterknife-library
请就此问题向我提出任何建议.提前致谢..
我在我的一个应用程序中处理浮动标签微调器.我能够正确地从xml代码下面显示微调器.但现在我需要以编程方式添加app:met_floatingLabel ="highlight".
<com.weiwangcn.betterspinner.library.material.MaterialBetterSpinner
android:id="@+id/spinner_Type"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:hint="@string/type"
app:met_floatingLabel="highlight" />
Run Code Online (Sandbox Code Playgroud)
想法?
我正在尝试使用 updateList() 中的 notificationDataSetchanged() 更新 myadapter。但不适用于 recyclerview。我可以看到 updateList() 中的列表大小及其显示的实际结果,但只有 relerview 没有更新。此类是在 MVVM 设计模式中设计的。
public class TasksAdapter extends RecyclerView.Adapter<TasksAdapter.TasksAdapterViewHolder> {
private static final String TAG = TasksAdapter.class.getSimpleName();
static ArrayList<ItemModel> list;
static Context mContext;
private Fragment fragment;
private int row_index = -1;
private SessionManager session;
// SelectColorVM colorVM;
public TasksAdapter(Fragment fragment, Context context, ArrayList<ItemModel> itemList) {
this.mContext = context;
this.list = itemList;
this.fragment = fragment;
session = new SessionManager(fragment.getContext());
}
public void updateList(ArrayList<ItemModel> itemList){
list.clear();
this.list = itemList;
notifyDataSetChanged();
}
@Override
public …Run Code Online (Sandbox Code Playgroud)