1
0
mirror of https://github.com/TeamNewPipe/NewPipe synced 2025-11-23 18:44:49 +00:00

UI redisign

This commit is contained in:
Somethingweirdhere
2018-06-17 23:29:28 +02:00
committed by Christian Schabesberger
parent 072e27ed27
commit 8d6d18e875
5 changed files with 23 additions and 46 deletions

View File

@@ -11,6 +11,7 @@ import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.preference.PreferenceManager;
import android.support.v7.widget.CardView;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.support.v7.widget.helper.ItemTouchHelper;
@@ -18,6 +19,7 @@ import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.FrameLayout;
import android.widget.TextView;
import org.schabi.newpipe.R;
@@ -176,11 +178,13 @@ public class ContentSettingsMain extends Fragment {
TextView text;
View view;
CardView cardView;
public TabViewHolder(View itemView) {
super(itemView);
text = itemView.findViewById(R.id.tabName);
cardView = itemView.findViewById(R.id.layoutCard);
view = itemView;
}

View File

@@ -11,6 +11,7 @@ import android.preference.PreferenceManager;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v4.app.DialogFragment;
import android.support.v7.widget.CardView;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
@@ -50,7 +51,6 @@ public class ContentSettingsMainDialog extends DialogFragment {
allTabs.setLayoutManager(new LinearLayoutManager(getContext()));
allAdapter = new AllAdapter();
allTabs.setAdapter(allAdapter);
allTabs.addItemDecoration(new DividerItemDecoration(getActivity()));
}
private void tabNames() {
@@ -107,11 +107,12 @@ public class ContentSettingsMainDialog extends DialogFragment {
super(itemView);
text = itemView.findViewById(R.id.tabName);
view = itemView.findViewById(R.id.layout);
view = itemView.findViewById(R.id.layoutCard);
}
void bind(int position) {
text.setText(allTabs[position]);
((CardView) view).setCardElevation(0);
view.setOnClickListener(v -> {
addTab(position);
});
@@ -119,37 +120,4 @@ public class ContentSettingsMainDialog extends DialogFragment {
}
}
}
public class DividerItemDecoration extends RecyclerView.ItemDecoration {
private final int[] ATTRS = new int[]{android.R.attr.listDivider};
private Drawable divider;
public DividerItemDecoration(Context context) {
final TypedArray styledAttributes = context.obtainStyledAttributes(ATTRS);
divider = styledAttributes.getDrawable(0);
styledAttributes.recycle();
}
@Override
public void onDraw(Canvas c, RecyclerView parent, RecyclerView.State state) {
int left = parent.getPaddingLeft();
int right = parent.getWidth() - parent.getPaddingRight();
int childCount = parent.getChildCount();
for (int i = 0; i < childCount; i++) {
View child = parent.getChildAt(i);
RecyclerView.LayoutParams params = (RecyclerView.LayoutParams) child.getLayoutParams();
int top = child.getBottom() + params.bottomMargin;
int bottom = top + divider.getIntrinsicHeight();
divider.setBounds(left, top, right, bottom);
divider.draw(c);
}
}
}
}