Php 在android中创建可点击列表视图
我有以下代码,我希望任何人都能告诉你们如何制作一个可点击列表视图我的代码,当我们点击我的列表视图打开一个新的活动时,显示列表视图内容的完整视图。请帮帮我。以下是代码Php 在android中创建可点击列表视图,php,android,mysql,xml,Php,Android,Mysql,Xml,我有以下代码,我希望任何人都能告诉你们如何制作一个可点击列表视图我的代码,当我们点击我的列表视图打开一个新的活动时,显示列表视图内容的完整视图。请帮帮我。以下是代码 news.class活动名称活动\新闻和内容\新闻和列表\查看\活动 newshow.java /*news.java*/ 包装com.synergywebdesigners.nima; 导入android.app.Activity; 导入android.app.ListActivity; 导入android.app.Prog
- news.class活动名称活动\新闻和内容\新闻和列表\查看\活动
- newshow.java
/*news.java*/
包装com.synergywebdesigners.nima;
导入android.app.Activity;
导入android.app.ListActivity;
导入android.app.ProgressDialog;
导入android.content.Intent;
导入android.os.AsyncTask;
导入android.os.Bundle;
导入android.os.StrictMode;
导入android.support.v7.app.AppActivity;
导入android.util.Log;
导入android.view.view;
导入android.widget.AdapterView;
导入android.widget.Button;
导入android.widget.ListAdapter;
导入android.widget.ListView;
导入android.widget.simpledapter;
导入android.widget.TextView;
导入android.widget.Toast;
导入com.android.volley.Response;
导入com.android.volley.VolleyError;
导入com.android.volley.toolbox.StringRequest;
导入com.android.volley.toolbox.volley;
导入org.apache.http.NameValuePair;
导入org.json.JSONArray;
导入org.json.JSONException;
导入org.json.JSONObject;
导入java.util.ArrayList;
导入java.util.HashMap;
导入java.util.List;
公共类新闻扩展了应用程序活动{
公共静态最终字符串JSON_URL=”http://www.synergywebdesigners.com/synergywebdesigners.com/ashish/nima/get_all_news.php";
私有列表视图列表视图;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_news);
listView=(listView)findViewById(R.id.listView);
sendRequest();
}
私有void sendRequest(){
StringRequest StringRequest=newStringRequest(JSON_URL,new Response.Listener()){
@凌驾
公共void onResponse(字符串响应){
showJSON(响应);
}
},
新的Response.ErrorListener(){
@凌驾
公共无效onErrorResponse(截击错误){
Toast.makeText(news.this,error.getMessage(),Toast.LENGTH_LONG.show();
}
});
com.android.volley.RequestQueue RequestQueue=volley.newRequestQueue(此);
添加(stringRequest);
}
私有void showJSON(字符串json){
ParseJSON pj=新的ParseJSON(json);
pj.parseJSON();
newsshow cl=newsshow(this,ParseJSON.ids,ParseJSON.ttitle,ParseJSON.tmessage,ParseJSON.tcreated);
setAdapter(cl);
}
}
----------
包装com.synergywebdesigners.nima;
导入android.app.Activity;
导入android.app.ListActivity;
导入android.content.Intent;
导入android.text.Html;
导入android.view.LayoutInflater;
导入android.view.view;
导入android.view.ViewGroup;
导入android.widget.AdapterView;
导入android.widget.ArrayAdapter;
导入android.widget.ListView;
导入android.widget.TableLayout;
导入android.widget.TextView;
/**
*PC于2016年12月20日创建。
*/
公共类新闻节目扩展ArrayAdapter{
私有字符串[]id;
私有字符串[]ttitle;
私有字符串[]t消息;
私有字符串[]t已创建;
私人活动语境;
公共新闻节目(活动上下文、字符串[]ID、字符串[]标题、字符串[]消息、字符串[]已创建){
super(上下文,R.layout.list\u view\u layout,id);
this.context=上下文;
this.ids=ids;
this.ttitle=标题;
this.tmessage=消息;
this.tcreated=已创建;
}
@凌驾
公共视图getView(int位置、视图转换视图、视图组父视图){
LayoutInflater充气器=上下文。getLayoutInflater();
View listViewItem=充气机。充气(R.layout.list\u View\u layout,null,true);
TextView id=(TextView)listViewItem.findViewById(R.id.id);
TextView title=(TextView)listViewItem.findViewById(R.id.title);
TextView消息=(TextView)listViewItem.findViewById(R.id.message);
TextView created=(TextView)listViewItem.findViewById(R.id.created);
id.setText(id[位置]+”);
title.setText(ttitle[职位]);
message.setText(Html.fromHtml(tmessage[position]);
created.setText(tcreated[position]);
返回listViewItem;
}
}
----------
如果你想要一个可点击的列表,为什么你的列表项上没有一个点击监听器? 如果单击应该激活一个活动,请考虑如下内容: CurrentActivity.this.startActivity(新意图(CurrentActivity.this,NewActivity.class)) 也许您还可以再多解释一下您拥有什么以及您对这段代码片段的期望
祝你好运:)在你的主要活动中,你可以这样做:
import android.app.Activity;
import android.app.ListActivity;
import android.app.ProgressDialog;
import android.content.Intent;
import android.os.AsyncTask;
import android.os.Bundle;
import android.os.StrictMode;
import android.support.v7.app.AppCompatActivity;
import android.util.Log;
import android.view.View;
import android.widget.AdapterView;
import android.widget.Button;
import android.widget.ListAdapter;
import android.widget.ListView;
import android.widget.SimpleAdapter;
import android.widget.TextView;
import android.widget.Toast;
import com.android.volley.Response;
import com.android.volley.VolleyError;
import com.android.volley.toolbox.StringRequest;
import com.android.volley.toolbox.Volley;
import org.apache.http.NameValuePair;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
public class news extends AppCompatActivity {
public static final String JSON_URL = "http://www.synergywebdesigners.com/synergywebdesigners.com/ashish/nima/get_all_news.php";
private ListView listView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_news);
listView = (ListView) findViewById(R.id.listView);
// add these lines in your code
// listening to single list item on click
lv.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
// selected item
String product = ((TextView) view).getText().toString();
// Launching new Activity on selecting single List Item
Intent i = new Intent(getApplicationContext(), AnotherActivity.class);
// sending data to new activity
i.putExtra("item", item);
startActivity(i);
}
});
sendRequest();
}
private void sendRequest() {
StringRequest stringRequest = new StringRequest(JSON_URL, new Response.Listener<String>() {
@Override
public void onResponse(String response) {
showJSON(response);
}
},
new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
Toast.makeText(news.this, error.getMessage(), Toast.LENGTH_LONG).show();
}
});
com.android.volley.RequestQueue requestQueue = Volley.newRequestQueue(this);
requestQueue.add(stringRequest);
}
private void showJSON(String json) {
ParseJSON pj = new ParseJSON(json);
pj.parseJSON();
newsshow cl = new newsshow(this, ParseJSON.ids, ParseJSON.ttitle, ParseJSON.tmessage, ParseJSON.tcreated);
listView.setAdapter(cl);
}
}
此外,您还可以按照本教程了解更多详细信息:
请具体说明问题所在。什么不按预期工作?没有任何问题我希望我的列表视图是可点击的您希望您的列表视图项目可点击或完整列表视图可点击?请指定特定列表或其项目可点击?是的,我希望可点击列表视图,其显示新活动中的所有数据在此行中,您可以找到在列表视图中选择的项目名称。在你的代码,你有线性布局,你铸造的文本视图。或者您可以编辑上面的代码,也可以添加日志以获得更多帮助当出现此错误时,当您单击listview时?您可以显示您所做的更改吗
<!-- list-view-layout.xml -->
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:weightSum="1">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="New Text"
android:textColor="#000000"
android:id="@+id/id"/>
<TextView
android:paddingLeft="20dp"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="New Text"
android:textAllCaps="true"
android:textAppearance="?android:attr/textAppearanceSmall"
android:textColor="#000000"
android:textStyle="bold"
android:id="@+id/title"
/>
</RelativeLayout>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="New Text"
android:textColor="#000000"
android:id="@+id/message"
android:maxLength="1000"
android:paddingLeft="20dp"/>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textColor="#000000"
android:text="New Text"
android:id="@+id/created"
android:paddingLeft="20dp"/>
</LinearLayout>
import android.app.Activity;
import android.app.ListActivity;
import android.app.ProgressDialog;
import android.content.Intent;
import android.os.AsyncTask;
import android.os.Bundle;
import android.os.StrictMode;
import android.support.v7.app.AppCompatActivity;
import android.util.Log;
import android.view.View;
import android.widget.AdapterView;
import android.widget.Button;
import android.widget.ListAdapter;
import android.widget.ListView;
import android.widget.SimpleAdapter;
import android.widget.TextView;
import android.widget.Toast;
import com.android.volley.Response;
import com.android.volley.VolleyError;
import com.android.volley.toolbox.StringRequest;
import com.android.volley.toolbox.Volley;
import org.apache.http.NameValuePair;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
public class news extends AppCompatActivity {
public static final String JSON_URL = "http://www.synergywebdesigners.com/synergywebdesigners.com/ashish/nima/get_all_news.php";
private ListView listView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_news);
listView = (ListView) findViewById(R.id.listView);
// add these lines in your code
// listening to single list item on click
lv.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
// selected item
String product = ((TextView) view).getText().toString();
// Launching new Activity on selecting single List Item
Intent i = new Intent(getApplicationContext(), AnotherActivity.class);
// sending data to new activity
i.putExtra("item", item);
startActivity(i);
}
});
sendRequest();
}
private void sendRequest() {
StringRequest stringRequest = new StringRequest(JSON_URL, new Response.Listener<String>() {
@Override
public void onResponse(String response) {
showJSON(response);
}
},
new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
Toast.makeText(news.this, error.getMessage(), Toast.LENGTH_LONG).show();
}
});
com.android.volley.RequestQueue requestQueue = Volley.newRequestQueue(this);
requestQueue.add(stringRequest);
}
private void showJSON(String json) {
ParseJSON pj = new ParseJSON(json);
pj.parseJSON();
newsshow cl = new newsshow(this, ParseJSON.ids, ParseJSON.ttitle, ParseJSON.tmessage, ParseJSON.tcreated);
listView.setAdapter(cl);
}
}
Intent i = getIntent();
// getting attached intent data
String item = i.getStringExtra("item");