title: Seekbar width in a custom preference
body: <p>I'm trying to code a preferences widget to set a value with a SeekBar. This includes a Title, Summary, Seekbar and a TextView to show current value. All of them but Title should be shown in a second row (as standard preferences).</p>
  
  <p>I can't make it work. I first tried with a RelativeLayout but BELOW, etc. rules where not applied.Then I'm trying with Linear Layout + TableLayout but Seekbar doesn't catch minimumWidth and remains small.</p>
  
  <p>image <a href="https://i.stack.imgur.com/laYVk.png" rel="nofollow noreferrer">here</a></p>
  
  <p>All this is done through code. Here it is</p>
  
  <pre><code> LinearLayout layoutv = new LinearLayout(getContext());
      layoutv.setOrientation(LinearLayout.VERTICAL);
  
      //Title
      LinearLayout.LayoutParams params1 = new LinearLayout.LayoutParams(
              LinearLayout.LayoutParams.WRAP_CONTENT,
              LinearLayout.LayoutParams.WRAP_CONTENT);
      TextView view = new TextView(getContext());
      view.setId(VIEW_ID_TITLE);
      view.setText(getTitle());
      view.setTextSize(21);
      view.setTypeface(Typeface.SANS_SERIF, Typeface.NORMAL);
      view.setTextColor(Color.WHITE);
      view.setLayoutParams(params1);
      layoutv.addView(view);
  
      //TAble Layout to show all the information
      TableLayout layout = new TableLayout(getContext());
  
      TableLayout.LayoutParams params0 = new TableLayout.LayoutParams(
              TableLayout.LayoutParams.FILL_PARENT,
              TableLayout.LayoutParams.WRAP_CONTENT);
      layout.setLayoutParams(params0);
      layout.setShrinkAllColumns(true);
  
      //Row
      TableRow tr = new TableRow(getContext());
  
      //Summary
      TextView summary = new TextView(getContext());
      summary.setId(VIEW_ID_SUMMARY);
      summary.setText(getSummary());
      summary.setTextSize(14);
      summary.setTypeface(Typeface.SANS_SERIF, Typeface.NORMAL);
      tr.addView(summary);
  
      //SeekBar
      SeekBar bar = new SeekBar(getContext());
      bar.setId(VIEW_ID_BAR);
      bar.setMax(maximum);
      bar.setProgress((int)this.oldValue);
      bar.setMinimumWidth(80);
      bar.setOnSeekBarChangeListener(this);
      tr.addView(bar);
  
      //Monitor Box
      this.monitorBox = new TextView(getContext());
      this.monitorBox.setId(VIEW_ID_MONITOR);
      this.monitorBox.setTextSize(12);
      this.monitorBox.setTypeface(Typeface.MONOSPACE, Typeface.ITALIC);
      this.monitorBox.setPadding(2, 5, 0, 0);
      this.monitorBox.setText(Float.toString((float) bar.getProgress()/10.0f));
      tr.addView(this.monitorBox);       
  
      layout.addView(tr);
  
     layoutv.setPadding(15, 5, 10, 5); 
  
     layoutv.addView(layout);
  
     layoutv.setId(android.R.id.widget_frame);
  
     return layoutv;
  </code></pre>
  
  <p>Many thanks</p>