Revision 52d0a923
Added by Leszek Koltunski almost 4 years ago
src/main/java/org/distorted/dialogs/RubikDialogPattern.java | ||
---|---|---|
21 | 21 |
|
22 | 22 |
import android.app.Dialog; |
23 | 23 |
import android.content.Context; |
24 |
import android.content.DialogInterface; |
|
24 | 25 |
import android.os.Bundle; |
25 | 26 |
import androidx.annotation.NonNull; |
26 | 27 |
import androidx.fragment.app.FragmentActivity; |
... | ... | |
29 | 30 |
import androidx.appcompat.app.AppCompatDialogFragment; |
30 | 31 |
import com.google.android.material.tabs.TabLayout; |
31 | 32 |
import android.util.DisplayMetrics; |
33 |
import android.util.TypedValue; |
|
32 | 34 |
import android.view.LayoutInflater; |
33 | 35 |
import android.view.View; |
34 | 36 |
import android.view.Window; |
35 | 37 |
import android.view.WindowManager; |
38 |
import android.widget.Button; |
|
36 | 39 |
import android.widget.ImageView; |
37 | 40 |
import android.widget.TextView; |
38 | 41 |
|
39 | 42 |
import org.distorted.main.R; |
43 |
import org.distorted.main.RubikActivity; |
|
40 | 44 |
import org.distorted.objects.RubikObjectList; |
41 | 45 |
import org.distorted.patterns.RubikPatternList; |
42 | 46 |
|
... | ... | |
55 | 59 |
FragmentActivity act = getActivity(); |
56 | 60 |
AlertDialog.Builder builder = new AlertDialog.Builder(act); |
57 | 61 |
|
62 |
DisplayMetrics displaymetrics = new DisplayMetrics(); |
|
63 |
act.getWindowManager().getDefaultDisplay().getMetrics(displaymetrics); |
|
64 |
final float titleSize= displaymetrics.widthPixels * RubikActivity.MENU_BIG_TEXT_SIZE; |
|
65 |
final float okSize = displaymetrics.widthPixels * RubikActivity.MENU_MEDIUM_TEXT_SIZE; |
|
66 |
|
|
58 | 67 |
LayoutInflater layoutInflater = act.getLayoutInflater(); |
59 | 68 |
TextView tv = (TextView) layoutInflater.inflate(R.layout.dialog_title, null); |
69 |
tv.setTextSize(TypedValue.COMPLEX_UNIT_PX, titleSize); |
|
60 | 70 |
tv.setText(R.string.choose_pattern); |
61 | 71 |
builder.setCustomTitle(tv); |
62 | 72 |
|
... | ... | |
76 | 86 |
final View view = inflater.inflate(R.layout.dialog_tabbed, null); |
77 | 87 |
builder.setView(view); |
78 | 88 |
|
89 |
// TabLayout tl = view.findViewById(R.id.sliding_tabs); |
|
90 |
|
|
91 |
|
|
79 | 92 |
ViewPager viewPager = view.findViewById(R.id.viewpager); |
80 | 93 |
TabLayout tabLayout = view.findViewById(R.id.sliding_tabs); |
81 | 94 |
mPagerAdapter = new RubikDialogPatternPagerAdapter(act, viewPager, this); |
... | ... | |
108 | 121 |
window.clearFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND); |
109 | 122 |
} |
110 | 123 |
|
124 |
dialog.setOnShowListener(new DialogInterface.OnShowListener() |
|
125 |
{ |
|
126 |
@Override |
|
127 |
public void onShow(DialogInterface dialog) |
|
128 |
{ |
|
129 |
Button btnPositive = ((AlertDialog)dialog).getButton(Dialog.BUTTON_POSITIVE); |
|
130 |
btnPositive.setTextSize(TypedValue.COMPLEX_UNIT_PX, okSize); |
|
131 |
} |
|
132 |
}); |
|
133 |
|
|
111 | 134 |
return dialog; |
112 | 135 |
} |
113 | 136 |
|
Also available in: Unified diff
Improvements to the UI - make it proportional regardless of the physical screen size. (Part 7 - last 2 Dialogs)