我正在使用Volley获取JSON提要,其中包含名称,评级和URL。我在Android上有textview,它会显示Fetched Name,Rating和all。我有一个Button,但它直接显示了URL,因为我将Text设置为Fetched URL。
目前,我得到了这个:
我需要将按钮文本设置为寄存器&如果单击按钮,则应打开从JSON Feed获取的URL。
特此我附上了代码
@Override
public void onBindViewHolder(CourseViewHolder holder, int position) {
Course course = courseList.get(position);
holder.textViewCoursename.setText(course.getCoursename());
holder.textViewcoursedescshort.setText(course.getCoursedescshort());
//holder.textViewcourseurl.setText(course.getCourseurl());
holder.textViewcourserating.setText(course.getCourserating());
Glide.with(mCtx)
.load(course.getCourseimg())
.into(holder.imageView);
Button button = (Button) button.findViewById(R.id.textViewcourseurl);
button.setOnClickListener(new Button.OnClickListener() {
public void onClick(View v) {
//Do stuff here
}
});
}
答案 0 :(得分:1)
您可以使用Intent
执行此任务。
//Just put Intent on your button click
button.setOnClickListener(new Button.OnClickListener() {
public void onClick(View v) {
Intent i = new Intent(Intent.ACTION_VIEW);
i.setData(Uri.parse(course.getCourseurl()));
mCtx.startActivity(i);
//This will open url in browser if you have application in your device.
}
});
如果您要加载WebView
中的网址,请检查以下链接
答案 1 :(得分:0)
在已声明按钮的适配器中,需要实现按钮的onClick
方法:
Button button = (Button) button.findViewById(R.id.textViewcourseurl);
button.setOnClickListener(new Button.OnClickListener() {
public void onClick(View v) {
Uri uri = Uri.parse("http://www.google.com");
Intent intent = new Intent(Intent.ACTION_VIEW, uri);
context.startActivity(intent);
}
});
这将有助于您在可用浏览器中打开特定网址。 如果您想在webview中打开您的网址,请点击此链接。 How to open a url in webview on new screen based on button click
答案 2 :(得分:0)
我需要将按钮文本设置为寄存器&如果单击按钮,则应打开从JSON Feed
获取的URL
您应该使用指定操作的Intent加载URL。 例如,加载URL:
String url = //get your url from the JSON feed ;
Intent i = new Intent(Intent.ACTION_VIEW);
i.setData(Uri.parse(url));
startActivity(i);
基本上,上面的代码将完成查找可以加载URL并为您加载URL的应用程序的工作。
在将URL传递给意图
之前,请不要忘记检查URL是否为空答案 3 :(得分:0)
在你的适配器onBindViewHolder()
方法中,就像那样:
// get the course url
String courserURL = course.getCourseurl();
button.setOnClickListener(new Button.OnClickListener() {
public void onClick(View v) {
// make sure the course url value is not empty
if(!courserURL.isEmpty()){
// assign an ActionView to run that URL
Intent i = new Intent(Intent.ACTION_VIEW);
i.setData(Uri.parse(courserURL));
holder.button.getContext().startActivity(i);
}
}
});
答案 4 :(得分:0)
要更改底名,您需要使用ArrayList<String>
打开底部的链接:
Intent browserIntent = new Intent(Intent.ACTION_VIEW);
browserIntent.setData("YourLinkHere);
context.startActivity(browserIntent);