我在recyclerView
中放了一个按钮,将其移动到下一个活动,但当我单击该按钮时,它什么也不做,包括不将其移动到下一个活动。
我尝试过将按钮放在RecolyerView
外部,但是当RecolyerView
出现时,按钮已经消失了。我尝试修改关于recyclerview
的所有代码,但没有成功。
这是展示它的活动
package com.example.rsolveapp;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;
import com.google.android.gms.tasks.OnSuccessListener;
import com.google.firebase.database.DataSnapshot;
import com.google.firebase.database.DatabaseError;
import com.google.firebase.database.DatabaseReference;
import com.google.firebase.database.FirebaseDatabase;
import com.google.firebase.database.ValueEventListener;
import java.util.ArrayList;
public class RsolverMatch extends AppCompatActivity {
private DatabaseReference database;
private RecyclerView rvView;
private RecyclerView.Adapter adapter;
private RecyclerView.LayoutManager layoutManager;
private ArrayList<Description> daftarBarang;
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.rsolvermatch);
rvView = (RecyclerView) findViewById(R.id.rv_main);
rvView.setHasFixedSize(true);
layoutManager = new LinearLayoutManager(this);
rvView.setLayoutManager(layoutManager);
database = FirebaseDatabase.getInstance().getReference();
database.child("description").addValueEventListener(new
ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
daftarBarang = new ArrayList<>();
for (DataSnapshot noteDataSnapshot :
dataSnapshot.getChildren()) {
Description description =
noteDataSnapshot.getValue(Description.class);
description.setKey(noteDataSnapshot.getKey());
daftarBarang.add(description);
}
adapter = new AdapterDescRecyclerView(daftarBarang,
RsolverMatch.this);
rvView.setAdapter(adapter);
}
@Override
public void onCancelled(DatabaseError databaseError) {
System.out.println(databaseError.getDetails() + " " +
databaseError.getMessage());
}
});
}
public static Intent getActIntent(Activity activity){
return new Intent(activity, RsolverMatch.class);
}
}
这是按钮的第一个.xml布局
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:card_view="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:padding="10dip"
android:background="@drawable/background1">
<android.support.v7.widget.CardView
android:id="@+id/cv_main"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="4dp"
android:padding="10dp"
android:layout_gravity="center_horizontal"
card_view:cardBackgroundColor="@color/background_material_light"
card_view:cardCornerRadius="3dp"
card_view:cardElevation="2.5dp">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<TextView
android:layout_margin="8dp"
android:id="@+id/descText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Description : "
android:textColor="@color/black"
android:textSize="16sp"/>
<TextView
android:layout_margin="8dp"
android:id="@+id/tv_namabarang"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textColor="@android:color/black"
android:textSize="16sp" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<TextView
android:layout_margin="8dp"
android:id="@+id/dayText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Working Day :"
android:textColor="@color/black"
android:textSize="16sp"/>
<TextView
android:layout_margin="8dp"
android:id="@+id/tv_day"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textColor="@android:color/black"
android:textSize="16sp" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<TextView
android:layout_margin="8dp"
android:id="@+id/daysHour"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Start Working Hour : "
android:textColor="@color/black"
android:textSize="16sp"/>
<TextView
android:layout_marginTop="8dp"
android:id="@+id/tv_shour"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@android:color/black"
android:textSize="16sp" />
<TextView
android:layout_marginTop="8dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text=":"
android:textColor="@color/black"
android:textSize="16sp"/>
<TextView
android:layout_marginTop="8dp"
android:id="@+id/tv_smin"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@android:color/black"
android:textSize="16sp" />
</LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<TextView
android:layout_margin="8dp"
android:id="@+id/dayeHour"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="End Working Hour : "
android:textColor="@color/black"
android:textSize="16sp"/>
<TextView
android:layout_marginTop="8dp"
android:id="@+id/tv_ehour"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@android:color/black"
android:textSize="16sp" />
<TextView
android:layout_marginTop="8dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text=":"
android:textColor="@color/black"
android:textSize="16sp"/>
<TextView
android:layout_marginTop="8dp"
android:id="@+id/tv_emin"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@android:color/black"
android:textSize="16sp" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
</android.support.v7.widget.CardView>
<Button
android:id="@+id/takeJob"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:text="Take Job"
android:background="@color/green"
android:layout_marginTop="10dp"/>
</LinearLayout>
这是按钮的第二个.xml布局
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/background1">
<android.support.v7.widget.RecyclerView
android:id="@+id/rv_main"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:scrollbars="vertical"/>
</LinearLayout>
public class AdapterDescRecyclerView extends
RecyclerView.Adapter<AdapterDescRecyclerView.ViewHolder> {
private ArrayList<Description> daftarBarang;
private Context context;
public AdapterDescRecyclerView(ArrayList<Description> barangs, Context ctx){
daftarBarang = barangs;
context = ctx;
}
class ViewHolder extends RecyclerView.ViewHolder {
TextView tvTitle;
TextView tvday;
TextView tvshour;
TextView tvsmin;
TextView tvehour;
TextView tvemin;
CardView cvMain;
ViewHolder(View v) {
super(v);
tvTitle = (TextView) v.findViewById(R.id.tv_namabarang);
tvday = (TextView) v.findViewById(R.id.tv_day);
tvshour = (TextView) v.findViewById(R.id.tv_shour);
tvsmin = (TextView) v.findViewById(R.id.tv_smin);
tvehour = (TextView) v.findViewById(R.id.tv_ehour);
tvemin = (TextView) v.findViewById(R.id.tv_emin);
cvMain = (CardView) v.findViewById(R.id.cv_main);
}
}
@Override
public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View v =
LayoutInflater.from(parent.getContext()).inflate(R.layout.item_job,
parent, false);
// mengeset ukuran view, margin, padding, dan parameter layout lainnya
ViewHolder vh = new ViewHolder(v);
return vh;
}
@Override
public void onBindViewHolder(ViewHolder holder, final int position) {
final String name = daftarBarang.get(position).getDescription();
final String day = daftarBarang.get(position).getDay();
final String shour = daftarBarang.get(position).getsHour();
final String smin = daftarBarang.get(position).getsMin();
final String ehour = daftarBarang.get(position).geteHour();
final String emin = daftarBarang.get(position).geteMin();
holder.tvTitle.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
}
});
holder.tvTitle.setOnLongClickListener(new View.OnLongClickListener() {
@Override
public boolean onLongClick(View view) {
return true;
}
});
holder.tvTitle.setText(name);
holder.tvday.setText(day);
holder.tvshour.setText(shour);
holder.tvsmin.setText(smin);
holder.tvehour.setText(ehour);
holder.tvemin.setText(emin);
}
@Override
public int getItemCount() {
return daftarBarang.size();
}
}
这是我的Rsolvermatch活动,它已经影响onclicklistener的元素,但导致错误
package com.example.rsolveapp;
import android.app.Activity;
import android.content.DialogInterface;
import android.content.Intent;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;
import com.google.android.gms.tasks.OnSuccessListener;
import com.google.firebase.database.DataSnapshot;
import com.google.firebase.database.DatabaseError;
import com.google.firebase.database.DatabaseReference;
import com.google.firebase.database.FirebaseDatabase;
import com.google.firebase.database.ValueEventListener;
import java.util.ArrayList;
public class RsolverMatch extends AppCompatActivity implements
View.OnClickListener {
private DatabaseReference database;
private RecyclerView rvView;
private RecyclerView.Adapter adapter;
private RecyclerView.LayoutManager layoutManager;
private ArrayList<Description> daftarBarang;
Button takeJob;
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.rsolvermatch);
rvView = (RecyclerView) findViewById(R.id.rv_main);
rvView.setHasFixedSize(true);
layoutManager = new LinearLayoutManager(this);
rvView.setLayoutManager(layoutManager);
takeJob.setOnClickListener(this);
takeJob = findViewById(R.id.takeJob);
database = FirebaseDatabase.getInstance().getReference();
database.child("description").addValueEventListener(new
ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
daftarBarang = new ArrayList<>();
for (DataSnapshot noteDataSnapshot : dataSnapshot.getChildren())
{
Description description =
noteDataSnapshot.getValue(Description.class);
description.setKey(noteDataSnapshot.getKey());
daftarBarang.add(description);
}
adapter = new AdapterDescRecyclerView(daftarBarang,
RsolverMatch.this);
rvView.setAdapter(adapter);
}
@Override
public void onCancelled(DatabaseError databaseError) {
System.out.println(databaseError.getDetails() + " " +
databaseError.getMessage());
}
});
}
@Override
public void onClick(View v) {
if (v == takeJob) {
Intent intent = new Intent(RsolverMatch.this, Chatting.class);
startActivity(intent);
}
}
public static Intent getActIntent (Activity activity){
return new Intent(activity, RsolverMatch.class);
}
}
您应该将按钮的setOnClickListener放在适配器的OnBindViewWholder函数中。并将该位置用作viewholder.getAdapterPosition();当您单击RecyclerView中任何项的按钮时,还可以传递执行startActivity()所需的任何参数;在适配器的构造函数中。
我正在尝试通过xpath,css,ID...但什么都管用。 我总是得到错误:没有这样的元素:无法定位元素 我添加了一个明确的等待,但它仍然不起作用。 你能帮帮我吗? 单选按钮
在前面输入图像描述, 下面是我的代码,当应用程序运行时启动,但它无法选择按钮,给出如下错误: 从eclipse控制台添加wait:log后出现新错误 生成信息:版本:“2.48.2”,修订版:“41bccdd”,时间:“2015-10-09 19:59:20”系统信息:主机:“NCA1026471”,IP:“192.168.56.1”,OS.Name:“Windows 7”,OS.arch:“AM
问题内容: 我正在使用Java学习Selenium Webdriver。作为一个学习示例,我尝试打开MakeMyTrip,访问“ 国际航班”页面,然后单击Google Chrome中的“ 单向” 单选按钮。我尝试了其他方法来定位此单选按钮,但仍无法正常工作。请在我的代码示例下面找到。 谁能帮我解决这个问题? 问题答案: 使用以下代码:- 享受..如果仍然遇到任何问题,请与我联系:)
问题内容: 当我单击他的图像时,我想选择单选按钮,但是它不起作用。这是我尝试过的: 我的两个属性都具有相同的 data =“” 属性:对于图像和输入,单击图像时,是否有任何方法可以检查输入(该收音机)? 谢谢 更新: 我发现一些代码有效,但是仅在图像上单击了三下,因此当单击最后一个脚本时,脚本停止了,无法再次选择第一个或第二个,我不知道为什么…我认为必须取消选中所有单选按钮,然后选中选中的一个按钮
我正在尝试用Selenium Web驱动程序点击一个按钮。 (我觉得是用棱角写的??) URL为https://www.truelocal.com.au/search/accountants/canberra 这是页面底部的绿色按钮,上面有“加载更多结果” 元素页源是...
如何通过调用javascript的内联函数来检查单选按钮是否被选中? 现在我没有得到任何东西,它忽略了cnfrm函数,所以我想让它执行,这样我就可以检查它是否被选中。