80,354
社区成员
发帖
与我相关
我的任务
分享
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical">
<ImageView
android:id="@+id/imgMachine"
android:layout_width="@dimen/dp_72"
android:layout_height="@dimen/dp_72"
android:layout_marginLeft="@dimen/dp_8"
android:layout_marginRight="@dimen/dp_8"
android:clickable="true"
android:longClickable="true"
android:src="@drawable/machine" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:orientation="horizontal">
<TextView
android:id="@+id/txtMachineTitle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="一号清洗站#1"
android:textSize="@dimen/sp_8" />
<TextView
android:id="@+id/txtMachineMac"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:visibility="gone" />
</LinearLayout>
</LinearLayout>
class MachineGridViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener {
/**
* The Machine.
*/
ImageView machine;
/**
* The Title.
*/
TextView title;
/**
* The Mac.
*/
TextView mac;
/**
* Instantiates a new Machine grid view holder.
*
* @param itemView the item view
*/
public MachineGridViewHolder(View itemView) {
super(itemView);
machine = (ImageView) itemView.findViewById(R.id.imgMachine);
title = (TextView) itemView.findViewById(R.id.txtMachineTitle);
mac = (TextView) itemView.findViewById(R.id.txtMachineMac);
machine.setOnClickListener(this);
}
@Override
public void onClick(View v) {
if (listener != null) {
listener.onItemClick(mac.getText().toString());
}
}
}
public class MainActivity extends AppCompatActivity {
private RecyclerView mRecyclerView;
MyAdapter myAdapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
myAdapter = new MyAdapter(this);
myAdapter.setItemClick(new ItemClick() {
@Override
public void onItemClick(String s) {
Toast.makeText(MainActivity.this, s, Toast.LENGTH_SHORT).show();
}
});
mRecyclerView = (RecyclerView) findViewById(R.id.id_recyclerview);
mRecyclerView.setLayoutManager(new LinearLayoutManager(this));
mRecyclerView.setAdapter(myAdapter);
}
}
public class MyAdapter extends RecyclerView.Adapter<MyAdapter.MachineGridViewHolder> {
ItemClick listener;
Context context;
MyAdapter (Context context ) {
this.context = context;
}
@Override
public MachineGridViewHolder onCreateViewHolder(ViewGroup parent, int viewType)
{
MachineGridViewHolder holder = new MachineGridViewHolder(LayoutInflater.from(
context).inflate(R.layout.item, parent,
false));
return holder;
}
@Override
public void onBindViewHolder(MachineGridViewHolder holder, int position)
{
}
@Override
public int getItemCount()
{
return 20;
}
public void setItemClick(ItemClick itemClick) {
this.listener = itemClick;
}
class MachineGridViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener {
/**
* The Machine.
*/
ImageView machine;
/**
* The Title.
*/
TextView title;
/**
* The Mac.
*/
TextView mac;
/**
* Instantiates a new Machine grid view holder.
*
* @param itemView the item view
*/
public MachineGridViewHolder(View itemView) {
super(itemView);
machine = (ImageView) itemView.findViewById(R.id.imgMachine);
title = (TextView) itemView.findViewById(R.id.txtMachineTitle);
mac = (TextView) itemView.findViewById(R.id.txtMachineMac);
machine.setOnClickListener(this);
/* machine.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
listener.onItemClick(mac.getText().toString());
}
});*/
}
@Override
public void onClick(View v) {
if (listener != null) {
listener.onItemClick(mac.getText().toString());
}
}
}
}
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical">
<ImageView
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/imgMachine"
android:clickable="true"
android:longClickable="true"
android:src="@mipmap/ic_launcher" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:orientation="horizontal">
<TextView
android:id="@+id/txtMachineTitle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="一号清洗站#1"/>
<TextView
android:id="@+id/txtMachineMac"
android:text="mac"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:visibility="gone" />
</LinearLayout>
</LinearLayout>