Android: LayoutParams для TextView заставляет представление исчезнуть, программно

Я столкнулся с этим под разными углами зрения. В основном суть заключается в следующем:

Я выложил шаблон в XML для интерфейса, который НУЖЕН запускаться программно, поэтому он будет динамически заполняться во время выполнения.

Проблема здесь в том, что XML TextView имеет довольно много настроек макета (которые работают) и являются необходимыми. Но если я фактически установлю их в коде, TextView даже не отобразится.

(Кстати, TextView вложен в TableRow, то есть к весу.) Шаблон XML, который я спроектировал первым, для использования в качестве ссылки для кода, выглядит следующим образом, и он прекрасно работает:

<TextView
  android:id="@+id/txtviewWhiteBox"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  android:layout_weight="1.0"
  android:background="@drawable/textview_9patch_white"
  android:gravity="center"
  android:text="75"
  android:textColor="@android:color/black"
  android:layout_margin="20dp"
  android:padding="20dp"
  android:textSize="40dp" />

Как я уже сказал, это отлично выглядит. Когда я запускаю тот же макет в коде и применяю LayoutParams, TextView исчезает.

Вот соответствующий фрагмент:

int textViewExampleID = 9001;

private TextView txtviewExample = new TextView(this);

private void buildTextView(){   
    LayoutParams paramsExample = new LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT,1.0f);
    txtviewExample.setId(textViewExampleID);
    txtviewExample.setBackgroundResource(R.drawable.textview_9patch_white);
    txtviewExample.setGravity(Gravity.CENTER);
    txtviewExample.setTextColor(getResources().getColor(android.R.color.black));
    paramsExample.setMargins(20, 20, 20, 20);
    txtviewExample.setPadding(20, 20, 20, 20);
    txtviewExample.setTextSize(40); 
    txtviewExample.setText("customExample");

    //if I comment out the following line, this TextView displays.
    //if I leave it in, it doesn't display.
    txtviewExample.setLayoutParams(paramsExample);
}

Я понимаю, что для LayoutParams доступны все виды классов, и я играл со всеми ними LinearLayout.LayoutParams, TableView.LayoutParams, RelativeLayout.LayoutParams, LayoutParams просто сам по себе ... Независимо от того, что я пробую, любая попытка вызвать "setLayoutParams" рендерит весь TextView ушел. Я пролистал форумы здесь и не нашел ответа. Это не может быть ЭТО необычным.

Ответы на вопрос(3)

Ваш ответ на вопрос