是否可以在應用中使用多個活動而不是片段創建一個滑動的TabLayout?我有兩個活動正在嘗試使用可滑動的TabLayout創建應用程序。我正在尋找網絡,但還找不到。如果可以構建,任何人都可以提供一些鏈接或教程嗎?使用活動代替片段的TabLayout
2
A
回答
2
從GestureDetector和OnSwipeTouchListener:來自第二源
public class MainActivity extends Activity {
private GestureDetectorCompat mDetector;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mDetector = new GestureDetectorCompat(this, new MyGestureListener());
}
@Override
public boolean onTouchEvent(MotionEvent event){
this.mDetector.onTouchEvent(event);
return super.onTouchEvent(event);
}
class MyGestureListener extends GestureDetector.SimpleOnGestureListener {
private static final String DEBUG_TAG = "Gestures";
private static final int SWIPE_THRESHOLD = 100;
private static final int SWIPE_VELOCITY_THRESHOLD = 100;
@Override
public boolean onDown(MotionEvent e) {
return true;
}
@Override
public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) {
boolean result = false;
try {
float diffY = e2.getY() - e1.getY();
float diffX = e2.getX() - e1.getX();
if (Math.abs(diffX) > Math.abs(diffY)) {
if (Math.abs(diffX) > SWIPE_THRESHOLD && Math.abs(velocityX) > SWIPE_VELOCITY_THRESHOLD) {
if (diffX > 0) {
onSwipeRight();
} else {
onSwipeLeft();
}
}
result = true;
}
else if (Math.abs(diffY) > SWIPE_THRESHOLD && Math.abs(velocityY) > SWIPE_VELOCITY_THRESHOLD) {
if (diffY > 0) {
onSwipeBottom();
} else {
onSwipeTop();
}
}
result = true;
} catch (Exception exception) {
exception.printStackTrace();
}
return result;
}
public void onSwipeRight() {
}
public void onSwipeLeft() {
}
public void onSwipeTop() {
}
public void onSwipeBottom() {
}
}
用法:
imageView.setOnTouchListener(new OnSwipeTouchListener() {
public void onSwipeTop() {
Toast.makeText(MyActivity.this, "top", Toast.LENGTH_SHORT).show();
}
public void onSwipeRight() {
Toast.makeText(MyActivity.this, "right", Toast.LENGTH_SHORT).show();
Intent intent = new Intent(this, SecondActivity.class);
startActivity(intent);
}
public void onSwipeLeft() {
Toast.makeText(MyActivity.this, "left", Toast.LENGTH_SHORT).show();
Intent intent = new Intent(this, FirstActivity.class);
startActivity(intent);
}
public void onSwipeBottom() {
Toast.makeText(MyActivity.this, "bottom", Toast.LENGTH_SHORT).show();
}
public boolean onTouch(View v, MotionEvent event) {
return gestureDetector.onTouchEvent(event);
}
});
2
是的 - 雖然可能,但效果並不明顯。這將像用2-3年前的解決方案解決您的問題。如果你仍然想繼續,你可以參考以下鏈接: http://www.mkyong.com/android/android-tablayout-example/ 這應該有助於你理解。
+0
但是無法刷卡。只能點擊。我想要一個可以滑動的 – Sri
相關問題
- 1. 從活動導航到TabLayout/ViewPager片段
- 2. 如何使用TabLayout滾動片段?
- 3. 用TabLayout中的新片段替換片段
- 4. Tablayout中的片段
- 5. 如何打開新的活動按鈕點擊內部TabLayout使用片段
- 6. Tablayout內部片段
- 7. 從活動發送數據到TabLayout片段
- 8. 在片段中使用TabLayout和ViewPager
- 9. 片段活動片段內
- 10. 活動片段
- 11. 當我們使用片段時使用片段活動?
- 12. 用片段代替CardView
- 13. 使用Robolectric的片段測試活動
- 14. 使用片段破壞的活動
- 15. 活動到片段1,片段1到片段2片段2到活動
- 16. Android:TabActivity反對使用片段代替
- 17. Android:無法用另一個片段替換活動中的片段?
- 18. 使用相同的代碼片段和活動
- 19. TabLayout重疊ViewPager片段
- 20. TabLayout ViewPager清除片段
- 21. 在片段中加載活動代碼
- 22. 大活動片段
- 23. 片段和活動
- 24. 片段或活動?
- 25. 轉換使用活動+片段和cardview
- 26. 在片段中使用活動方法
- 27. Actionbarsherlock使用活動或片段
- 28. 如何使用viewpager從tablayout中的另一個片段調用片段
- 29. Android:活動與片段(片段頂部)
- 30. 片段標籤和片段活動
爲什麼我的問題是downvoted?作爲一名學習者,對我不熟悉的事情感到好奇並不意味着我應該低估我的想法! – Sri
爲什麼要使用活動而不是碎片? – yennsarah
因爲我不想在這個應用程序中使用片段。 – Sri