Project

General

Profile

« Previous | Next » 

Revision ad0c8e0e

Added by Leszek Koltunski almost 4 years ago

Make the margins and paddings proportional to screen size.

View differences:

src/main/java/org/distorted/states/RubikStatePattern.java
113 113

  
114 114
    // BOT ////////////////////////////
115 115
    DisplayMetrics metrics = act.getResources().getDisplayMetrics();
116
    final float scale = metrics.density;
117 116

  
118
    setupPrevButton(act,scale);
119
    setupNextButton(act,scale);
120
    setupTextView(act,scale);
117
    setupPrevButton(act,width);
118
    setupNextButton(act,width);
119
    setupTextView(act,width);
121 120

  
122 121
    setTrioState(false);
123 122

  
......
127 126
    layoutLeft.addView(mMovesText);
128 127
    layoutLeft.addView(mNextButton);
129 128

  
130
    setupBackButton(act,scale);
129
    setupBackButton(act,width);
131 130

  
132 131
    LinearLayout layoutRight = act.findViewById(R.id.mainBarRight);
133 132
    layoutRight.removeAllViews();
......
158 157

  
159 158
///////////////////////////////////////////////////////////////////////////////////////////////////
160 159

  
161
  private void setupBackButton(final RubikActivity act, final float scale)
160
  private void setupBackButton(final RubikActivity act, final float width)
162 161
    {
163
    int padding = (int)(3*scale + 0.5f);
164
    LinearLayout.LayoutParams backParams = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT,LinearLayout.LayoutParams.MATCH_PARENT);
162
    int padding = (int)(width*RubikActivity.PADDING);
163
    int margin  = (int)(width*RubikActivity.MARGIN);
164

  
165
    LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT,LinearLayout.LayoutParams.MATCH_PARENT);
166
    params.topMargin    = margin;
167
    params.bottomMargin = margin;
168
    params.leftMargin   = margin;
169
    params.rightMargin  = margin;
170

  
165 171
    mBackButton = new Button(act);
166
    mBackButton.setLayoutParams(backParams);
172
    mBackButton.setLayoutParams(params);
167 173
    mBackButton.setPadding(padding,0,padding,0);
168 174
    mBackButton.setTextSize(TypedValue.COMPLEX_UNIT_PX, mButtonSize);
169 175
    mBackButton.setText(R.string.back);
......
193 199

  
194 200
///////////////////////////////////////////////////////////////////////////////////////////////////
195 201

  
196
  private void setupPrevButton(final RubikActivity act, final float scale)
202
  private void setupPrevButton(final RubikActivity act, final float width)
197 203
    {
198
    int padding = (int)(3*scale + 0.5f);
204
    int padding = (int)(width*RubikActivity.PADDING);
205
    int margin  = (int)(width*RubikActivity.MARGIN);
206

  
199 207
    LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(0,LinearLayout.LayoutParams.MATCH_PARENT,1.0f);
208
    params.topMargin    = margin;
209
    params.bottomMargin = margin;
210
    params.leftMargin   = margin;
211
    params.rightMargin  = margin;
212

  
200 213
    mPrevButton = new ImageButton(act);
201 214
    mPrevButton.setLayoutParams(params);
202 215
    mPrevButton.setPadding(padding,0,padding,0);
......
218 231

  
219 232
///////////////////////////////////////////////////////////////////////////////////////////////////
220 233

  
221
  private void setupNextButton(final RubikActivity act, final float scale)
234
  private void setupNextButton(final RubikActivity act, final float width)
222 235
    {
223
    int padding = (int)( 3*scale + 0.5f);
236
    int padding = (int)(width*RubikActivity.PADDING);
237
    int margin  = (int)(width*RubikActivity.MARGIN);
238

  
224 239
    LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(0,LinearLayout.LayoutParams.MATCH_PARENT, 1.0f);
240
    params.topMargin    = margin;
241
    params.bottomMargin = margin;
242
    params.leftMargin   = margin;
243
    params.rightMargin  = margin;
244

  
225 245
    mNextButton = new ImageButton(act);
226 246
    mNextButton.setLayoutParams(params);
227 247
    mNextButton.setPadding(padding,0,padding,0);
......
243 263

  
244 264
///////////////////////////////////////////////////////////////////////////////////////////////////
245 265

  
246
  private void setupTextView(final RubikActivity act, final float scale)
266
  private void setupTextView(final RubikActivity act, final float width)
247 267
    {
248
    int padding = (int)( 3*scale + 0.5f);
268
    int padding = (int)(width*RubikActivity.PADDING);
269
    int margin  = (int)(width*RubikActivity.MARGIN);
270

  
249 271
    LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(0,LinearLayout.LayoutParams.MATCH_PARENT,2.0f);
272
    params.topMargin    = margin;
273
    params.bottomMargin = margin;
274
    params.leftMargin   = margin;
275
    params.rightMargin  = margin;
250 276

  
251 277
    mMovesText = new TextView(act);
252 278
    mMovesText.setTextSize(20);

Also available in: Unified diff