-2

I am creating an android application which presents with custom dialog. In that custom dialog i had placed had placed a table layout generated dynamically.By executing that the dialog was showing an empty dialog with the dialog header title only it was not displaying any table layout inside that dialog can any one help me how to view dynamic table layout inside custom dialog This is my activity

alert_progress_dialog = new AlertDialog.Builder(getActivity());
LayoutInflater inflater = (LayoutInflater)getActivity().getSystemService(getActivity().LAYOUT_INFLATER_SERVICE);
alert_progress_dialog.setTitle("MANUAL MODE : TESTING ");
View dialogview = inflater.inflate(R.layout.progressdialog, null);
alert_progress_dialog.setView(dialogview);
alert_progress_dialog.setMessage("This is a sample message");
table_dialog = (TableLayout)dialogview.findViewById(R.id.table_layout_1);

for (int i = 1; i <= 4; i++) {

    TableRow row = new TableRow(getActivity());
    row.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT,
            LayoutParams.WRAP_CONTENT));


    for (int j = 1; j <= 4; j++) 
    {
        TextView tv = new TextView(getActivity());
        tv.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT));
        tv.setBackgroundResource(R.drawable.cell_shape);
        tv.setPadding(5, 5, 5, 5);
        tv.setText("R " + i + ", C" + j);
        row.addView(tv);
    }

    table_dialog.addView(row);
}
alert_progress_dialog.show();

This is my xml file to call inside the dialog:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >

    <TableLayout
        android:id="@+id/table_layout_1"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="77dp" >
    </TableLayout>

</RelativeLayout>
moffeltje
  • 4,521
  • 4
  • 33
  • 57
BujjiDeepu
  • 111
  • 1
  • 14
  • So, every time you have a question, you're going to create 2 or 3 duplicates, never answer to the people who try to help you, and basically pollute this site with duplicates of duplicates ? – 2Dee Jul 01 '15 at 08:10
  • possible duplicate of [How to create table layout dynamically inside thread](http://stackoverflow.com/questions/31140323/how-to-create-table-layout-dynamically-inside-thread) – 2Dee Jul 01 '15 at 08:11

2 Answers2

0

This can be done using setView method, other solution will be to use DialogFragment, overriding onCreateView

EDIT: int first approach you have to keep in mind that you should not call setMessage method, otherwise it will override your custom view

EDIT 2: you can look how to set custom layout for an AlertDialog in this developer page

Chaosit
  • 1,116
  • 7
  • 21
0

Use Dialog instead of AlertDialog, then use setContentView with your layout id.