我无法在以下代码中查看标头。
activity_main.xml中
<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="match_parent"
android:layout_width="match_parent"
xmlns:tools="http://schemas.android.com/tools"
tools:context="am.dx.narmadaa.graytable_trial1.MainActivity"
android:fitsSystemWindows="true">
<android.support.design.widget.AppBarLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/AppTheme.AppBarOverlay"
/>
<include layout="@layout/content_table_gray"/>
<android.support.design.widget.FloatingActionButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/fab"
android:layout_gravity="bottom|end"
android:src="@android:drawable/ic_dialog_email"
android:layout_margin="16dp"/>
</android.support.design.widget.CoordinatorLayout>`
content_table_gray.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"
xmlns:tools="http://schemas.android.com/tools"
xmlns:app="http://schemas.android.com/apk/res-auto"
tools:context="am.dx.narmadaa.graytable_trial1.MainActivity"
tools:showIn="@layout/activity_main"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
app:layout_behavior="@string/appbar_scrolling_view_behavior">
<de.codecrafters.tableview.TableView
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/gray_table"/>
</LinearLayout>
MainActivity.java
package am.dx.narmadaa.graytable_trial1;
import android.graphics.Color;
import android.os.AsyncTask;
import android.support.design.widget.FloatingActionButton;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Toast;
import org.json.JSONArray;
import org.json.JSONException;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.ProtocolException;
import java.net.URL;
import java.util.ArrayList;
import de.codecrafters.tableview.TableView;
import de.codecrafters.tableview.toolkit.SimpleTableDataAdapter;
import de.codecrafters.tableview.toolkit.SimpleTableHeaderAdapter;
public class MainActivity extends AppCompatActivity {
String[][] table_data;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
FloatingActionButton fab;
fab = findViewById(R.id.fab);
final String json_head[] = {"Sl No","Entry Date","Lot no","Party","Total pcs","Total mtrs","Total wt","Count","Variety","Gray Width","Finishing Width","Remarks","SLUO","LUUser","GPM"};
final TableView<String[]> tableView;
tableView = findViewById(R.id.gray_table);
fab.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view)
{
String[][] json_data = {{"1","2","3","4","5","6","7","8","9","10","11","12","13","14","15"}};
tableView.setColumnCount(15);
tableView.setHeaderBackgroundColor(Color.parseColor("YELLOW"));
tableView.setHeaderAdapter(new SimpleTableHeaderAdapter(MainActivity.this,json_head));
tableView.setDataAdapter(new SimpleTableDataAdapter(MainActivity.this,json_data));
}
});
}
public String[][] returnData(ArrayList<GrayHelper> grayHelpers)
{
table_data = new String[grayHelpers.size()][15];
GrayHelper gh;
for (int i=0; i < grayHelpers.size();i++)
{
gh = grayHelpers.get(i);
table_data[i][0] = gh.getSlno();
table_data[i][1] = gh.getEd();
table_data[i][2] = gh.getLno();
table_data[i][3] = gh.getPar();
table_data[i][4] = gh.getPcs();
table_data[i][5] = gh.getMts();
table_data[i][6] = gh.getWt();
table_data[i][7] = gh.getCt();
table_data[i][8] = gh.getVar();
table_data[i][9] = gh.getGw();
table_data[i][10] = gh.getFw();
table_data[i][11] = gh.getRemarks();
table_data[i][12] = gh.getSluo();
table_data[i][13] = gh.getLuuser();
table_data[i][14] = gh.getGpm();
}
return table_data;
}
public class ServerFetch extends AsyncTask<Void,Void,String>
{
String[][] json_encoded;
@Override
protected void onPreExecute()
{
super.onPreExecute();
}
@Override
protected String doInBackground(Void... voids)
{
String json_url = "" ;
try
{
StringBuilder stringBuilder = new StringBuilder();
URL url = new URL(json_url);
HttpURLConnection httpURLConnection = (HttpURLConnection) url.openConnection();
httpURLConnection.setRequestMethod("POST");
InputStream inputStream = httpURLConnection.getInputStream();
InputStreamReader inputStreamReader = new InputStreamReader(inputStream);
BufferedReader bufferedReader = new BufferedReader(inputStreamReader);
}
catch (MalformedURLException e)
{
e.printStackTrace();
Toast.makeText(MainActivity.this,e.toString(),Toast.LENGTH_LONG).show();
}
catch (ProtocolException e)
{
e.printStackTrace();
Toast.makeText(MainActivity.this,e.toString(),Toast.LENGTH_LONG).show();
}
catch (IOException e)
{
e.printStackTrace();
Toast.makeText(MainActivity.this,e.toString(),Toast.LENGTH_LONG).show();
}
return null;
}
@Override
protected void onPostExecute(String result)
{
super.onPostExecute(result);
/*try {
jsonArray = new JSONArray(result);
}
catch (JSONException e)
{
e.printStackTrace();
Toast.makeText(MainActivity.this,e.toString(),Toast.LENGTH_LONG).show();
}*/
}
}
//Class for parsing data
public class GrayHelper
{
//Instance Variables
private String slno;
private String ed;
private String lno;
private String par;
private String pcs;
private String mts;
private String wt;
private String ct;
private String var;
private String gw;
private String fw;
private String remarks;
private String sluo;
private String luuser;
private String gpm;
//Getters
public String getSlno()
{
return slno;
}
public String getEd() {
return ed;
}
public String getLno() {
return lno;
}
public String getPar() {
return par;
}
public String getPcs() {
return pcs;
}
public String getMts() {
return mts;
}
public String getWt() {
return wt;
}
public String getCt() {
return ct;
}
public String getVar() {
return var;
}
public String getGw() {
return gw;
}
public String getFw() {
return fw;
}
public String getRemarks() {
return remarks;
}
public String getSluo() {
return sluo;
}
public String getLuuser() {
return luuser;
}
public String getGpm() {
return gpm;
}
//Setters
public void setSlno(String slno) {
this.slno = slno;
}
public void setEd(String ed) {
this.ed = ed;
}
public void setLno(String lno) {
this.lno = lno;
}
public void setPar(String par) {
this.par = par;
}
public void setPcs(String pcs) {
this.pcs = pcs;
}
public void setMts(String mts) {
this.mts = mts;
}
public void setWt(String wt) {
this.wt = wt;
}
public void setCt(String ct) {
this.ct = ct;
}
public void setVar(String var) {
this.var = var;
}
public void setGw(String gw) {
this.gw = gw;
}
public void setFw(String fw) {
this.fw = fw;
}
public void setRemarks(String remarks) {
this.remarks = remarks;
}
public void setSluo(String sluo) {
this.sluo = sluo;
}
public void setLuuser(String luuser) {
this.luuser = luuser;
}
public void setGpm(String gpm) {
this.gpm = gpm;
}
}
}
这是因为我使用了超过10列显示的事实吗? 我甚至无法查看单个标题。而且当我查看数据时,只显示前九个值而不管值的总数。所以任何人都可以帮我解决这个问题....