我的情况: - 我有一个带有复杂项目的RecyclerView(很多ImageView,文本..) - 我使用4个ImageView作为4个按钮(喜欢,评论,分享,不喜欢) - 我想为每个按钮使用TouchListener,因为我想控制动画,也点击事件。 (我知道如何为每个项目使用ClickListener,因此请关注TouchEvent)示例:NewsFeed上每个Story的Facebook评论按钮,当您触摸按钮时,动画比例图标。点击事件只需在释放按钮后继续。
问题是:我只能通过使用recyclerView.findChildViewUnder(x,y)获取每个项目的父视图(例如:LinearLayout包含每个项目的其他组件)。
那么如何知道在使用clickListener时点击了哪个按钮: - button1.setClickListener(this); - button2.setClickListener(this); (在View Holder上) 在活动或片段中的捕获事件之后: - switch(view.getId()){ 案例R.id.button1:......做点什么;打破; 案例R.id.button2:......做点什么;打破; .... 我整天都在谷歌这个问题,但所有的样本和回答都只是使用了ClickListener,就像我上面说的那样。
谢谢!
答案 0 :(得分:0)
内部的recyclerview适配器就像这样使用
@Override
public void onBindViewHolder(final RecyclerViewAdapterA.ViewHolder_a holder, final int position) {
holder.button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
}
});
答案 1 :(得分:0)
您可以通过
获得父视图TRY…CATCH Block
现在您可以轻松获得相应的视图,例如
BEGIN TRY
--your query
END TRY
BEGIN CATCH
SELECT ERROR_MESSAGE()
END CATCH
希望你明白!!!