dropdown color fix, layout fix

Signed-off-by: nuclearfog <hatespirit666@gmail.com>
This commit is contained in:
nuclearfog 2021-04-07 16:43:40 +02:00
parent b1ff3c7c35
commit 5707b32e73
No known key found for this signature in database
GPG Key ID: AA0271FBE406DB98
5 changed files with 42 additions and 51 deletions

View File

@ -353,6 +353,10 @@ public class AppSettings extends AppCompatActivity implements OnClickListener, O
case CARDCOLOR:
settings.setCardColor(color);
fontAdapter.notifyDataSetChanged();
if (settings.isLoggedIn()) {
locationAdapter.notifyDataSetChanged();
}
break;
case ICONCOLOR:

View File

@ -1,11 +1,13 @@
package org.nuclearfog.twidda.adapter;
import android.graphics.Typeface;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.TextView;
import org.nuclearfog.twidda.R;
import org.nuclearfog.twidda.database.GlobalSettings;
import static android.util.TypedValue.COMPLEX_UNIT_SP;
@ -18,26 +20,11 @@ import static android.util.TypedValue.COMPLEX_UNIT_SP;
*/
public class FontAdapter extends BaseAdapter {
/**
* text padding of an item
*/
private static final int TEXT_PADDING = 20;
/**
* item text padding to the next text item
*/
private static final int TEXT_PADDING_BOTTOM = 5;
/**
* font size of an item
*/
private static final float FONT_SIZE = 24.0f;
/**
* Background color transparency mask
*/
private static final int TRANSPARENCY_MASK = 0xbfffffff;
/**
* android system fonts
*/
@ -79,19 +66,17 @@ public class FontAdapter extends BaseAdapter {
@Override
public View getView(int pos, View view, ViewGroup parent) {
TextView textItem;
String name = names[pos];
Typeface font = fonts[pos];
if (view instanceof TextView)
textItem = (TextView) view;
else {
textItem = new TextView(parent.getContext());
textItem.setTextSize(COMPLEX_UNIT_SP, FONT_SIZE);
textItem.setPadding(TEXT_PADDING, 0, TEXT_PADDING, TEXT_PADDING_BOTTOM);
if (view == null) {
LayoutInflater inflater = LayoutInflater.from(parent.getContext());
view = inflater.inflate(R.layout.item_dropdown, parent, false);
}
textItem.setText(name);
textItem.setTypeface(font);
textItem = view.findViewById(R.id.dropdown_textitem);
textItem.setText(names[pos]);
textItem.setTypeface(fonts[pos]);
textItem.setTextSize(COMPLEX_UNIT_SP, FONT_SIZE);
textItem.setTextColor(settings.getFontColor());
textItem.setBackgroundColor(settings.getBackgroundColor() & TRANSPARENCY_MASK);
return textItem;
textItem.setBackgroundColor(settings.getCardColor());
view.setBackgroundColor(settings.getBackgroundColor());
return view;
}
}

View File

@ -1,6 +1,7 @@
package org.nuclearfog.twidda.adapter;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
@ -8,6 +9,7 @@ import android.widget.TextView;
import androidx.annotation.MainThread;
import org.nuclearfog.twidda.R;
import org.nuclearfog.twidda.backend.items.TrendLocation;
import org.nuclearfog.twidda.database.GlobalSettings;
@ -24,26 +26,11 @@ import static android.util.TypedValue.COMPLEX_UNIT_DIP;
*/
public class LocationAdapter extends BaseAdapter {
/**
* item text padding
*/
private static final int TEXT_PADDING = 20;
/**
* item text padding to the next text item
*/
private static final int TEXT_PADDING_BOTTOM = 5;
/**
* text size of the items
*/
private static final float TEXT_SIZE = 16.0f;
/**
* Background color transparency mask
*/
private static final int TRANSPARENCY_MASK = 0xbfffffff;
private GlobalSettings settings;
private List<TrendLocation> data = new ArrayList<>();
@ -110,19 +97,19 @@ public class LocationAdapter extends BaseAdapter {
@Override
public View getView(final int pos, View view, ViewGroup parent) {
public View getView(int pos, View view, ViewGroup parent) {
TextView textItem;
if (view instanceof TextView) {
textItem = (TextView) view;
} else {
textItem = new TextView(parent.getContext());
textItem.setTextSize(COMPLEX_UNIT_DIP, TEXT_SIZE);
textItem.setPadding(TEXT_PADDING, 0, TEXT_PADDING, TEXT_PADDING_BOTTOM);
if (view == null) {
LayoutInflater inflater = LayoutInflater.from(parent.getContext());
view = inflater.inflate(R.layout.item_dropdown, parent, false);
}
textItem.setBackgroundColor(settings.getBackgroundColor() & TRANSPARENCY_MASK);
textItem = view.findViewById(R.id.dropdown_textitem);
textItem.setTextSize(COMPLEX_UNIT_DIP, TEXT_SIZE);
textItem.setBackgroundColor(settings.getCardColor());
textItem.setTextColor(settings.getFontColor());
textItem.setTypeface(settings.getTypeFace());
textItem.setText(data.get(pos).getName());
return textItem;
view.setBackgroundColor(settings.getBackgroundColor());
return view;
}
}

View File

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/dropdown_textitem"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="@dimen/dropdown_padding" />
</LinearLayout>

View File

@ -145,6 +145,9 @@
<!--dimens of item_load.xml-->
<dimen name="loaditem_button_size">36sp</dimen>
<!-- dimens of item_dropdown-->
<dimen name="dropdown_padding">2dp</dimen>
<!--dimens of page_media.xml-->
<dimen name="mediapage_preview_margin">10dp</dimen>
<dimen name="mediapage_circle_size">64dp</dimen>