2
I’m trying to make a ScrollView - TableLayout - TableRow
via program, but using an XML Layout as the internal database of Tablerows.
It turns out that whenever I try to add the text of the last field (message) of this layout or just inflate the layout, it makes disappear some definitions that are directly in xml and the field dt_send no longer appear.
I must be doing something wrong, but I can’t find the mistake! Someone could help me?
fragment_communicated.xml
<LinearLayout
android:layout_width="170dp"
android:layout_height="120dp"
android:layout_gravity="center"
android:gravity="center"
android:orientation="vertical">
<ImageView
android:id="@+id/logoEscola"
android:layout_width="170dp"
android:layout_height="100dp"
android:layout_gravity="center"
android:src="@drawable/logo_escola" />
</LinearLayout>
<FrameLayout
android:id="@+id/content_frame_comunicado"
android:layout_width="match_parent"
android:layout_height="290dp"
android:layout_marginEnd="20dp"
android:layout_marginStart="20dp">
</FrameLayout>
snippet_tablerow.xml
<ImageView
android:id="@+id/img_remetente"
android:layout_width="65dp"
android:layout_height="71dp"
android:gravity="center"
android:src="@drawable/ic_chat" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="bottom"
android:orientation="horizontal">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_seta_close" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<TextView
android:id="@+id/remetente"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="2"
android:singleLine="true"
android:text="Remetente Remetente Remetente Remetente Remetente"
android:textColor="@color/azul_painel"
android:textSize="7pt"
android:textStyle="bold" />
<TextView
android:id="@+id/dt_envio"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="right"
android:text="99-99-9999"
android:textSize="5pt"
android:textStyle="italic" />
</LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<TextView
android:id="@+id/assunto"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:singleLine="true"
android:text="Assunto Email"
android:textColor="@color/azul_painel"
android:textSize="6pt"
android:textStyle="bold" />
<TextView
android:id="@+id/mensagem"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:singleLine="true"
android:text="Inicio Email"
android:textColor="@color/azul1_painel"
android:textSize="6pt"
android:textStyle="bold|italic" />
</LinearLayout>
</LinearLayout>
Fragmentcomunicado.java
public class FragmentComunicado extends Fragment{
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState){
final View rootView = inflater.inflate(R.layout.fragment_comunicado, container, false);
((MenuPrincipal)getActivity()).setActionBarTitle("Comunicado");
//** Fazer Chamada pesquisa dos comunicados por: aluno e ano
FrameLayout fl = (FrameLayout) rootView.findViewById(R.id.content_frame_comunicado);
fl.removeAllViews();
ScrollView sv = new ScrollView(rootView.getContext());
FrameLayout.LayoutParams lpsv = new FrameLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT);
sv.setLayoutParams(lpsv);
TableLayout tl = new TableLayout(rootView.getContext());
TableLayout.LayoutParams lptl = new TableLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT);
tl.setLayoutParams(lptl);
sv.addView(tl);
for (int i = 1; i <10; i++){
TableRow tr = new TableRow(rootView.getContext());
tl.addView(tr);
View tablerow = inflater.inflate(R.layout.fragment_comunicado_tablerow, tr, false);
ImageView img_remetente = (ImageView) tablerow.findViewById(R.id.img_remetente);
img_remetente.setImageResource(R.drawable.logo_escola);
TextView remetente = (TextView) tablerow.findViewById(R.id.remetente);
remetente.setText("Coord. Educacao Infantil");
TextView dt_envio = (TextView) tablerow.findViewById(R.id.dt_envio);
dt_envio.setText("02/01/2016");
TextView assunto = (TextView) tablerow.findViewById(R.id.assunto);
assunto.setText("Inicio Curso de Ferias");
TextView mensagem = (TextView) tablerow.findViewById(R.id.mensagem);
mensagem.setText("Bom dia Srs Pais, Nosso curso de ferias inicia-se cheio de atividades para nossos pequenos!!! Nesta semana teremos aventura no zoologico");
tr.addView(tablerow);
}
fl.addView(sv);
return rootView;
}
}