Tablelayout - Android - Error in Adding Table Layout Dynamically - Stack Overflow
Tablelayout - Android - Error in Adding Table Layout Dynamically - Stack Overflow
tablelayoutAndroid:ErrorinaddingtablelayoutdynamicallyStackOverflow
signup
login
tour
help
xDismiss
JointheStackOverflowCommunity
Stack Overflow is a community of 4.7 million
programmers, just like you, helping each other.
Join them it only takes a minute:
Signup
Android:Errorinaddingtablelayoutdynamically
IamtryingtodynamicallyaddtablelayouttoanxmlfileandtheLayoutParamsarecausingerrors.
Activitycode:
packagecom.pyrospiral.android.tabbedtimetable;
importandroid.app.Activity;
importandroid.graphics.Color;
importandroid.os.Bundle;
importandroid.widget.TableLayout;
importandroid.widget.TableLayout;
importandroid.widget.TableLayout.LayoutParams;
importandroid.widget.TableRow;
importandroid.widget.TextView;
publicclassTimeTableWeekextendsActivity{
TextViewsubname;
TextViewtiming;
@Override
protectedvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_time_table_week);
//Createtextview
TextViewtext=newTextView(this);
text.setText("aaaaa");
//Layoutparams
LayoutParamsparams=newTableLayout.LayoutParams(LayoutParams.MATCH_PARENT,
LayoutParams.WRAP_CONTENT);
android.widget.TableRow.LayoutParamstrparams=new
TableRow.LayoutParams(android.widget.TableRow.LayoutParams.WRAP_CONTENT,
android.widget.TableRow.LayoutParams.WRAP_CONTENT);
http://stackoverflow.com/questions/28072215/androiderrorinaddingtablelayoutdynamically
1/3
9/26/2016
tablelayoutAndroid:ErrorinaddingtablelayoutdynamicallyStackOverflow
//Findtableinxml
TableLayouttable=(TableLayout)findViewById(R.id.gridtable);
table.setLayoutParams(params);
//Createtablerow
TableRowrow=newTableRow(this);
row.setLayoutParams(trparams);
row.setBackgroundColor(Color.GREEN);
row.addView(text);
}
}
XMLfile:
<ScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
xmlns:android="http://schemas.android.com/apk/res/android">
<TableLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/gridtable">
</TableLayout>
</ScrollView>
Errors:
E/AndroidRuntimeFATALEXCEPTION:main
Process:com.pyrospiral.android.tabbedtimetable,PID:26691
java.lang.ClassCastException:android.widget.TableLayout$LayoutParamscannotbecastto
android.widget.FrameLayout$LayoutParams
ChangingTableLayout.LayoutParamstoFrameLayout.LayoutParamsgivesnoerrorsbutitalsodoesn't
showanything.
android tablelayout
editedJan21'15at16:45
askedJan21'15at16:32
Pyrospiral
13
2Answers
YouneedtochangeTableLayouttoFrameLayout,likethis:
http://stackoverflow.com/questions/28072215/androiderrorinaddingtablelayoutdynamically
2/3
9/26/2016
tablelayoutAndroid:ErrorinaddingtablelayoutdynamicallyStackOverflow
FrameLayout.LayoutParamsparams=newFrameLayout.LayoutParams(LayoutParams.MATCH_PARENT,
LayoutParams.WRAP_CONTENT);
toseeyourtextyouhavetoaddtherowtothetable
table.addView(row);
answeredJan21'15at16:47
kelvincer
1,180
18
Thanksthatworked,althoughifItryingdoingthatinaloopitsays"Thespecifiedchildalreadyhasaparent.
createnewrow.kelvincerJan21'15at17:17
Table'slayoutparametersarealreadydefinedinyourXMLsoIthinkyourvariable"params"is
unnecessarythere.
answeredJan21'15at16:49
joan
65
http://stackoverflow.com/questions/28072215/androiderrorinaddingtablelayoutdynamically
3/3