mirror of
https://github.com/AngelAuraMC/Amethyst-Android.git
synced 2025-09-13 06:39:54 -04:00
(CI build may error) Modify TabView to be vertical
This commit is contained in:
parent
a0f29e6e2a
commit
ca4bbaeadd
@ -4,10 +4,9 @@ import android.app.*;
|
||||
import android.content.*;
|
||||
import android.graphics.*;
|
||||
import android.os.*;
|
||||
import android.support.design.widget.*;
|
||||
import android.support.v4.app.*;
|
||||
import android.support.v4.view.*;
|
||||
import android.support.v7.app.*;
|
||||
import android.text.*;
|
||||
import android.util.*;
|
||||
import android.view.*;
|
||||
import android.widget.*;
|
||||
@ -17,6 +16,7 @@ import com.kdt.filerapi.*;
|
||||
import java.io.*;
|
||||
import java.nio.charset.*;
|
||||
import java.util.*;
|
||||
import net.kdt.pojavlaunch.launcheruiv3.*;
|
||||
import net.kdt.pojavlaunch.mcfragments.*;
|
||||
import net.kdt.pojavlaunch.prefs.*;
|
||||
import net.kdt.pojavlaunch.util.*;
|
||||
@ -26,7 +26,6 @@ import org.lwjgl.glfw.*;
|
||||
import android.app.AlertDialog;
|
||||
import android.support.v4.app.Fragment;
|
||||
import android.support.v4.app.FragmentManager;
|
||||
import android.text.*;
|
||||
//import android.support.v7.view.menu.*;
|
||||
//import net.zhuoweizhang.boardwalk.downloader.*;
|
||||
|
||||
@ -34,8 +33,8 @@ public class MCLauncherActivity extends AppCompatActivity
|
||||
{
|
||||
//private FragmentTabHost mTabHost;
|
||||
private LinearLayout fullTab;
|
||||
private ViewPager viewPager;
|
||||
private TabLayout tabLayout;
|
||||
private PojavLauncherViewPager viewPager;
|
||||
private VerticalTabLayout tabLayout;
|
||||
|
||||
private TextView tvVersion, tvUsernameView;
|
||||
private Spinner versionSelector;
|
||||
@ -98,9 +97,9 @@ public class MCLauncherActivity extends AppCompatActivity
|
||||
setContentView(R.layout.launcher_main_v3);
|
||||
// setContentView(R.layout.launcher_main);
|
||||
|
||||
fullTab = (LinearLayout) findViewById(R.id.launchermainFragmentTabView);
|
||||
tabLayout = (TabLayout) findViewById(R.id.launchermainTabLayout);
|
||||
viewPager = (ViewPager) findViewById(R.id.launchermainTabPager);
|
||||
fullTab = findViewById(R.id.launchermainFragmentTabView);
|
||||
tabLayout = findViewById(R.id.launchermainTabLayout);
|
||||
viewPager = findViewById(R.id.launchermainTabPager);
|
||||
|
||||
consoleView = new ConsoleFragment();
|
||||
crashView = new CrashFragment();
|
||||
|
@ -0,0 +1,59 @@
|
||||
// Source: https://github.com/TomazWang/TIL-today-i-learned/blob/master/Android/VerticalViewPager.md
|
||||
package net.kdt.pojavlaunch.launcheruiv3;
|
||||
|
||||
import android.content.*;
|
||||
import android.support.v4.view.*;
|
||||
import android.util.*;
|
||||
import android.view.*;
|
||||
|
||||
public class PojavLauncherViewPager extends ViewPager
|
||||
{
|
||||
public PojavLauncherViewPager(Context ctx) {
|
||||
this(ctx, null);
|
||||
}
|
||||
|
||||
public PojavLauncherViewPager(Context ctx, AttributeSet attrs) {
|
||||
super(ctx, attrs);
|
||||
setPageTransformer(true, new VerticalPageTransformer());
|
||||
}
|
||||
@Override
|
||||
public boolean onInterceptTouchEvent(MotionEvent ev) {
|
||||
|
||||
boolean interceped = super.onInterceptTouchEvent(swapXY(ev));
|
||||
swapXY(ev); // swap x,y back for other touch events.
|
||||
return interceped;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean onTouchEvent(MotionEvent ev) {
|
||||
return super.onTouchEvent(swapXY(ev));
|
||||
}
|
||||
|
||||
private MotionEvent swapXY(MotionEvent ev) {
|
||||
float width = getWidth();
|
||||
float height = getHeight();
|
||||
|
||||
float newX = (ev.getY() / height) * width;
|
||||
float newY = (ev.getX() / width) * height;
|
||||
|
||||
ev.setLocation(newX, newY);
|
||||
|
||||
return ev;
|
||||
}
|
||||
|
||||
private class VerticalPageTransformer implements PageTransformer {
|
||||
@Override
|
||||
public void transformPage(View page, float position) {
|
||||
if (position < -1) {
|
||||
page.setVisibility(View.INVISIBLE);
|
||||
} else if (position <= 1) {
|
||||
page.setVisibility(View.VISIBLE);
|
||||
|
||||
page.setTranslationX(page.getWidth() * -position);
|
||||
page.setTranslationY(position * page.getHeight());
|
||||
} else {
|
||||
page.setVisibility(View.INVISIBLE);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
File diff suppressed because it is too large
Load Diff
@ -18,12 +18,12 @@
|
||||
android:layout_weight="1.0"
|
||||
android:orientation="horizontal">
|
||||
|
||||
<android.support.design.widget.TabLayout
|
||||
<net.kdt.pojavlaunch.launcheruiv3.PojavLauncherTabLayout
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="match_parent"
|
||||
android:id="@+id/launchermainTabLayout"/>
|
||||
|
||||
<android.support.v4.view.ViewPager
|
||||
<net.kdt.pojavlaunch.launcheruiv3.PojavLauncherViewPager
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="match_parent"
|
||||
android:layout_weight="1"
|
||||
|
Loading…
x
Reference in New Issue
Block a user