Kiểu trượt Android trên Facebook


283

Ứng dụng Facebook mới và điều hướng của nó rất tuyệt. Tôi chỉ cố gắng để xem làm thế nào nó có thể được mô phỏng trong ứng dụng của tôi.

Bất cứ ai cũng có một đầu mối làm thế nào nó có thể đạt được?

nhập mô tả hình ảnh ở đây

Khi nhấp vào nút trên cùng bên trái, trang trượt và màn hình sau được hiển thị:

nhập mô tả hình ảnh ở đây

Video YouTube


2
vâng, một video cũng sẽ hữu ích, để biết hiệu quả chính xác.
bool.dev

@ bool.dev đây là video: youtube.com/watch?v=ANLMaL7zn20
MV Harsha

@HarshaMV: - Hãy thử tìm chủ đề này. Tôi nghĩ có thể giúp bạn phần nào. stackoverflow.com/questions/8453320/
Mạnh

3
Bài viết rất hay về điều hướng trượt trong Android - androiduipotypes.com/2012/06/ trên . Phải đọc.
AlexKorovyansky

Tôi đã thực hiện trình đơn trượt của riêng mình, xem tại đây stackoverflow.com/a/15880375/1939564
Muhammad Babar

Câu trả lời:


176

Bản thân tôi đã có một trò chơi với nó và cách tốt nhất tôi có thể tìm thấy là sử dụng FrameLayout và đặt một màn hình ngang ngang tùy chỉnh (HSV) trên đầu menu. Bên trong HSV là các Chế độ xem ứng dụng của bạn, nhưng có Chế độ xem trong suốt như là đứa trẻ đầu tiên. Điều này có nghĩa là, khi HSV có độ lệch cuộn bằng 0, menu sẽ hiển thị thông qua (và vẫn có thể nhấp một cách đáng ngạc nhiên).

Khi ứng dụng khởi động, chúng tôi cuộn HSV sang phần bù của Chế độ xem ứng dụng hiển thị đầu tiên và khi chúng tôi muốn hiển thị menu, chúng tôi sẽ cuộn lại để hiển thị menu thông qua Chế độ xem trong suốt.

Mã ở đây và hai nút dưới cùng (được gọi là HorzScrollWithListMothy và HorzScrollWithImageMothy) trong hoạt động Khởi chạy hiển thị các menu tốt nhất tôi có thể đưa ra:

Bản demo trình đơn trượt Android

Ảnh chụp màn hình từ trình giả lập (cuộn giữa):

Ảnh chụp màn hình từ trình giả lập (cuộn giữa)

Ảnh chụp màn hình từ thiết bị (cuộn toàn bộ). Lưu ý biểu tượng của tôi không rộng bằng biểu tượng menu Facebook, vì vậy chế độ xem menu và chế độ xem 'ứng dụng' không được căn chỉnh.

Ảnh chụp màn hình từ thiết bị (cuộn toàn bộ)


1
@AmokraneChentir Bạn có thể sử dụng các hoạt động khác nhau bằng cách gọi getDrawingCache()trong các hoạt động ngoài menu của mình và tạo ImageView từ bitmap. Sau đó gọi startActivity(intent)& overridePendingTransition(0, 0)theo onClickphương thức của ClickListenerForScrollinglớp để hiển thị ngay hoạt động mới và nhận được hiệu quả mong muốn.
Siklab.ph

1
Tôi tự hỏi nếu ngang ngang tùy chỉnh có thể sử dụng với ListView vì tài liệu chính thức của verticalScrollView đã đề cập rằng nó sẽ buộc ListView hiển thị toàn bộ các mục của nó.
shiami

1
cái nĩa này chuyển đổi các hoạt động mà không sử dụng các mảnh vỡ!
Erik B

1
Cảm ơn sự giúp đỡ của bạn, tôi đã có thể sử dụng HorzScrollWithListMothy.java.
KarenAnne

2
Cảm ơn bạn rất nhiều @PaulGrime ... đây là một ví dụ đơn giản tuyệt vời và điều tuyệt vời nhất là trong bản demo này đơn giản dễ hiểu và dễ dàng tùy chỉnh và không có dự án thư viện nào để sử dụng.
Naveen Kumar

37

Tôi đã triển khai điều hướng trượt giống như facebook trong dự án thư viện này .

Bạn có thể dễ dàng xây dựng nó vào ứng dụng, giao diện người dùng và điều hướng của bạn. Bạn sẽ chỉ cần triển khai một Hoạt động và một Đoạn, cho thư viện biết về nó - và thư viện sẽ cung cấp tất cả các hình ảnh động và điều hướng mong muốn.

Bên trong repo bạn có thể tìm thấy dự án demo, với cách sử dụng lib để thực hiện điều hướng giống như facebook. Đây là video ngắn với hồ sơ của dự án demo .

Ngoài ra, lib này phải tương thích với mẫu ActionBar này, vì dựa trên các giao dịch Hoạt động và TranslateAnimations (không phải giao dịch Fragment và Chế độ xem tùy chỉnh).

Ngay bây giờ, vấn đề nhất là làm cho nó hoạt động tốt cho ứng dụng, hỗ trợ cả chế độ dọc và ngang. Nếu bạn có bất kỳ phản hồi nào, vui lòng cung cấp thông qua github.

Tốt nhất,
Alex


4
Xin chào, tôi chỉ cần tìm ra rằng cách tiếp cận của bạn sẽ tạo ra một ảnh chụp màn hình lớn mỗi khi bạn mở thanh bên. Nó sẽ tăng kích thước heap và có thể gây ra lỗi bộ nhớ.
shiami

3
Cảm ơn korovyansk, nó rất đẹp. nhưng bố cục tuyệt đối không được chấp nhận trong các hệ điều hành mới. Bạn có thể mã lại lần nữa không?
Hesam

Cảm ơn tất cả những người đã phản hồi trong github hoặc ở đây. Tôi biết về một số lỗi và có ý tưởng làm thế nào để ứng dụng tốt hơn. Tôi làm nó, khi tôi sẽ có thời gian rảnh.
AlexKorovyansky

Xin chào koroyansk. Tôi đang sử dụng thư viện của bạn nó hoạt động tốt. Nhưng tôi có một vấn đề nhỏ. Khi danh sách thanh trượt mở, tôi đang bắt đầu hoạt động trên mục listview bấm. Hoạt động bắt đầu đúng nhưng hoạt ảnh trượt không hoạt động. Mã((MenuActivity) getActivity()).getSlideoutHelper().close(); startActivity(new Intent(getActivity(), MyActivity.class) .addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP).putExtra("category", position));
Nắng

trong trường hợp của bạn, hoạt động mới sẽ mở ngay lập tức mà không cần chờ kết thúc hoạt hình, bạn có thể thử mở rộng thư viện và thêm gọi lại cho kết thúc hoạt hình. có thể tôi sẽ thêm tính năng này vào phiên bản tiếp theo của thư viện.
AlexKorovyansky

24

Đây là một lib khác và dường như là tốt nhất theo ý kiến ​​của tôi. Tôi đã không viết nó ..

CẬP NHẬT:

Mã này có vẻ hoạt động tốt nhất đối với tôi và nó di chuyển toàn bộ Actionbar tương tự như ứng dụng G +.

Google đã làm thế nào để làm điều này? Trượt ActionBar trong ứng dụng Android


7
Tôi đã viết thư viện này, vui mừng bạn thích nó. Bây giờ nó thực sự cơ bản, nhưng tôi sẽ cải thiện nó trong vài tuần tới. Hơn cả sự chào đón cho những người khác cũng thay đổi nó.
David Scott

Thư viện này là hoàn toàn tuyệt vời. Thật đơn giản để sử dụng và hoạt động hoàn hảo. Cảm ơn bạn. Tôi chỉ muốn nói thêm rằng mẫu chỉ hoạt động với ICS (và tôi nghĩ là Honeycomb) .. nhưng thư viện hoạt động hoàn toàn trở lại 2.1, tôi đang sử dụng nó không có vấn đề gì.
Steven Elliott

Không tệ, nó khá đơn giản nhưng hoạt động tốt và thiết lập thực sự nhanh chóng. Tuy nhiên, nó không được cấu hình nhiều từ bên ngoài thư viện: tất cả các mục có cùng bố cục đơn giản và trên đường đi không có khả năng liệt kê động; cả hai điều sẽ dễ dàng thích nghi nhưng tôi thực sự cần nhóm trong danh sách và điều đó sẽ không dễ dàng.
htafoya

22

Tôi nghĩ rằng ứng dụng facebook không được viết bằng mã gốc (ý tôi là mã gốc, sử dụng bố cục trong Android) nhưng họ đã sử dụng webview cho nó và đã sử dụng một số thư viện ui javascript như sencha . Nó có thể dễ dàng đạt được bằng cách sử dụng khung sencha.

nhập mô tả hình ảnh ở đây


16
+1 Giao diện người dùng có thể thay đổi mà không cần Cập nhật ứng dụng, do đó, đây chắc chắn là một ứng dụng web và ứng dụng Android về cơ bản là một trình duyệt web.
Rudy

7
Tôi không chắc đây là điều cần thiết. Bộ khung cho giao diện người dùng có thể là bản địa (ví dụ: Chế độ xem thực tế và Chế độ xem gốc khác) và nội dung cho các Chế độ xem được tải động. Nếu bộ xương của ứng dụng thay đổi, thì có thể cần phải cập nhật.
Paul Grime

2
Tôi không nghĩ rằng ứng dụng facebook là một ứng dụng web. Thông thạo, nhanh nhẹn. Tôi biết các ứng dụng web / lai trông "giống như bản địa", nhưng vẫn còn một chút độ trễ so với bản địa. Không chỉ bộ xương - danh sách, bản đồ, vv trông và cảm thấy bản địa. Ít nhất là với tình trạng công nghệ hiện nay.
Ixx

Ok, ai đó nói với tôi rằng ứng dụng này không như thế này trong khoảng 2 tháng - vì vậy bạn đang tham khảo một phiên bản cũ mà tôi không biết. Dù sao, nó có thể là thông tin để nhận xét rằng ứng dụng hiện tại chắc chắn là bản địa.
Ixx

20

Đây là một thư viện mã nguồn mở (rất hay) khác!

Tính năng hay của cái này là nó dễ dàng tích hợp với ActionBarSherlock.

Đây là liên kết dự án github

Đây là liên kết tải xuống Google Play


2
tôi nghĩ rằng đây là tốt nhất
MV Harsha

17

Tôi vừa mới thực hiện quan điểm tương tự cho dự án của riêng tôi. Bạn có thể kiểm tra nó ở đây

Đây là màn hình của ứng dụng mẫu dựa trên thư viện tôi đã viết: Ví dụ ActionContentView

Thật dễ dàng để sử dụng chế độ xem tùy chỉnh này làm thành phần của bố cục XML. Đây là ví dụ:

    <shared.ui.actionscontentview.ActionsContentView
      android:id="@+id/content"
      android:layout_width="match_parent"
      android:layout_height="match_parent"
      app:actions_layout="@layout/actions"
      app:content_layout="@layout/content" />

Tôi sẽ có bất kỳ câu hỏi nào về việc sử dụng thư viện ActionContentView Tôi có thể viết một bài viết nhỏ tại các dự án Wiki.

Một số ưu điểm của thư viện này:

  • khả năng trượt xem bằng cảm ứng
  • thật dễ dàng để điều chỉnh kích thước của thanh hành động trong XML
  • hỗ trợ tất cả các phiên bản SDK Android bắt đầu từ 2.0 trở lên

Có một hạn chế:

  • tất cả các chế độ xem cuộn ngang sẽ không hoạt động ở giới hạn của chế độ xem này

Trân trọng, Steven


Làm thế nào để thiết lập UI frist là pic tải lên của bạn? Tôi kiểm tra nó frist UI là webView trên màn hình. tôi hy vọng listview được hiển thị khi ứng dụng bắt đầu. thông qua lib của bạn là 2.0, nhưng bản demo của bạn là 4.0, tôi hy vọng bạn cũng có thể sử dụng 2.0. Điều đó thật tuyệt
pengwang

@pengwang: Tôi vừa đẩy một số mã để hỗ trợ tính năng này. Bạn có thể làm điều này trong khi Activity.onResume () bằng cách gọi viewActionsContentView.showActions ();
thô lỗ

Có thể vô hiệu hóa các sự kiện cảm ứng trên phần ẩn? Chẳng hạn, khi phần bên phải được kích hoạt thì tất cả các chế độ xem bên phải bị vô hiệu hóa.
Valeriy

Có khả năng chặn bố cục nội dung trong khi hành động một được hiển thị. Tôi đã gửi email cho bạn một dự án mẫu.
thô lỗ

16

Với phiên bản gói hỗ trợ Android 13 (có thể 2013), có DrawerLayout để tạo một Ngăn kéo Điều hướng có thể được kéo vào từ cạnh của cửa sổ. Và, ngăn kéo điều hướng là một mẫu thiết kế bây giờ.

thư viện hỗ trợ v4

mẫu thiết kế ngăn kéo điều hướng


2
Có, mức API tối thiểu được hỗ trợ là 4.
Wubao Li

1
Và thư viện tương thích cho phép bạn sử dụng nó trên các thiết bị cũ hơn. Tôi chỉ phát triển một cho Gingerbread và sau đó.
Tony Maro

2
Điều này cần phải được tiếp tục ở đầu. Quá nhiều thư viện bên thứ ba bên ngoài trong các câu trả lời khác.
Jason Axelson

15

Đã thực hiện một đợt triển khai hiện có và biến nó thành một dự án thư viện cộng với ứng dụng ví dụ. Đồng thời thêm phân tích cú pháp XML cũng như tự động phát hiện một thanh hành động có thể có, do đó, nó hoạt động với thanh hành động gốc cũng như thanh hành động hỗ trợ như ActionBarSherlock.

Cái này cũng trượt thanh hành động đi!

Toàn bộ điều này là một dự án thư viện cùng với một ứng dụng ví dụ và được mô tả tại Menu trượt cho Android như các ứng dụng google và facebook . Cảm ơn scirocco cho ý tưởng và mã ban đầu!

SlideMothy trên Gingerbread SlideMothy trên ICS với ActionBar


10

Điều này là đơn giản và thanh lịch: https://github.com/akotoe/android-slide-out-menu.git

Ảnh chụp nhanh:

nhập mô tả hình ảnh ở đây


Bạn có thể giúp tôi được không?? Câu hỏi liên quan đến thanh trượt .. Đây là liên kết stackoverflow.com/questions/14500927/ trên
moDev

nó cho phép bạn trượt bằng cách chạm vào? (có nghĩa là vuốt)
alicanbatur

@Edward Tôi đã làm việc với mẫu của bạn, tôi nghĩ nó rất hay và dễ sử dụng nhưng gặp sự cố, khi xoay màn hình (Tôi đang sử dụng android: configChanges = "direction" trong tệp kê khai với android 3.1 vì tôi không muốn hoạt động được khởi động lại) màn hình sẽ quay tốt nhưng framelayout giữ kích thước của nó và nó trông không đẹp, bạn có cách nào khác không? Tôi đã thử mọi cách nhưng không thể sửa nó. cảm ơn
zvzej

@Edward đây là câu hỏi của tôi bằng cách sử dụng mẫu của bạn, xin vui lòng giúp tôi hoặc cho tôi một lời khuyên cảm ơn. stackoverflow.com/questions/16778911/ từ
zvzej


8

Không thể nhận xét về câu trả lời được đưa ra bởi @Paul Grime, dù sao tôi cũng đã gửi cho dự án github của anh ấy bản sửa lỗi cho vấn đề nhấp nháy ....

Tôi sẽ đăng bản sửa lỗi ở đây, có lẽ ai đó cần nó. Bạn chỉ cần thêm hai dòng mã. Cái đầu tiên bên dưới lệnh gọi anim.setAnimationListener:

anim.setFillAfter(true);

Và cái thứ hai sau cuộc gọi app.layout ():

app.clearAnimation();

Hi vọng điêu nay co ich :)


6

Tôi đã thực hiện điều này với AbsoluteLayout và một bộ điều khiển trượt đơn giản để chuyển chế độ xem sang phần bù âm để ẩn.

Nếu bất cứ ai quan tâm, tôi có thể dọn sạch mã / bố cục và bài viết. Tôi biết AbsoluteLayout không được dùng nữa, nhưng đó là một triển khai rất thẳng về phía trước. Chế độ xem bên trái / Chế độ xem bên phải và khi "trượt mở", chỉ cần di chuyển chế độ xem bên trái từ phần bù -X sang chiều rộng của thiết bị - bất cứ điều gì bạn muốn hiển thị về Chế độ xem bên phải


Tôi sẽ bảo đảm nếu bạn có thể làm điều đó mà không cần Tuyệt đối! Cảm ơn!
Igor

4

Xin chào, đây là ứng dụng demo mẫu tốt nhất cung cấp menu như facebook. Kiểm tra mã ở đây

nhập mô tả hình ảnh ở đây

nhập mô tả hình ảnh ở đây


3

Là một phần của Thư viện chung Android (ACL), tôi đã triển khai SideBar của riêng mình. Ưu điểm chính:

  1. Thanh bên có thể được đặt thành bất kỳ vị trí nào: trái, trên, dưới, phải
  2. Cả chế độ xem chính và chế độ xem đều có thể nhấp
  3. Thanh bên có thể được hiển thị một phần
  4. Thuộc tính có thể tạo kiểu cho SideBar giúp dễ dàng thay đổi kiểu
  5. Tạo tác trong repo maven
  6. Một phần của một thư viện lớn

Mã nguồn: https://github.com/serso/android-common/tree/master/view/src/main/java/org/solovyev/android/view/sidebar

Cách sử dụng: https://github.com/serso/android-common/blob/master/samples/res/layout/acl_view_layout.xml


3

Gần đây tôi đã làm việc trên phiên bản thực hiện menu trượt của tôi. Nó sử dụng thư viện SlidingMothy phổ biến của J.Feinstein.

Vui lòng kiểm tra mã nguồn tại GitHub:

https://github.com/baruckis/Android-SlidingMothyImcellenceation

Tải ứng dụng trực tiếp xuống thiết bị để thử:

https://play.google.com/store/apps/details?id=com.baruckis.SlidingMothyImcellenceation

Mã nên được tự giải thích vì ý kiến. Tôi hy vọng nó sẽ hữu ích! ;)


3

Tôi tìm thấy một cách đơn giản nhất cho nó và làm việc của nó. Sử dụng ngăn kéo Điều hướng đơn giản và gọi ngăn kéo.setdrawerListner () và sử dụng phương thức mainView.setX () trong phương thức ngăn kéo bên dưới hoặc sao chép mã của tôi.

tập tin xml

 <android.support.v4.widget.DrawerLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#000000" >

<RelativeLayout
    android:id="@+id/content_frame"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="#ffffff">

  <ImageView
      android:layout_width="40dp"
      android:layout_height="40dp"
      android:id="@+id/menu"
      android:layout_alignParentTop="true"
      android:layout_alignParentLeft="true"
      android:layout_marginTop="10dp"
      android:layout_marginLeft="10dp"
      android:src="@drawable/black_line"
      />
</RelativeLayout>


<RelativeLayout
    android:id="@+id/left_drawer"
    android:layout_width="200dp"
    android:background="#181D21"
    android:layout_height="match_parent"
    android:layout_gravity="start"
    >
    </RelativeLayout>
 </android.support.v4.widget.DrawerLayout>

tập tin java

   public class MainActivity extends AppCompatActivity {
DrawerLayout drawerLayout;
RelativeLayout mainView;
ImageView menu;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    menu=(ImageView)findViewById(R.id.menu);
    drawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout);
    mainView=(RelativeLayout)findViewById(R.id.content_frame);

    menu.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            drawerLayout.openDrawer(Gravity.LEFT);
        }
    });

    drawerLayout.setDrawerListener(new DrawerLayout.DrawerListener() {
        @Override
        public void onDrawerSlide(View drawerView, float slideOffset) {
            mainView.setX(slideOffset * 300);
        }

        @Override
        public void onDrawerOpened(View drawerView) {

        }

        @Override
        public void onDrawerClosed(View drawerView) {

        }

        @Override
        public void onDrawerStateChanged(int newState) {

        }
    });
 }
}

nhập mô tả hình ảnh ở đây

Cảm ơn bạn


2

Tôi sẽ đưa ra một số dự đoán táo bạo ở đây ...

Tôi giả sử họ có một bố cục đại diện cho menu không nhìn thấy được. Khi nhấn nút menu, chúng làm động bố cục / khung nhìn trên đầu để di chuyển ra khỏi đường và chỉ cần kích hoạt khả năng hiển thị của bố cục menu. Tôi đã không nghĩ về điều này gây ra bất kỳ vấn đề nào về chỉ số z trong các khung nhìn hoặc cách chúng kiểm soát điều đó.


nếu bạn đã sử dụng ứng dụng .. bạn thực sự có thể thấy rằng bố cục trượt sang bên phải nhường chỗ cho phần menu. tôi sẽ thử và làm một video và tải nó lên.
MV Harsha

1
Tôi sử dụng phiên bản iPhone, nếu phiên bản Android giống nhau, thì tôi nghi ngờ nó khác nhiều so với những gì tôi mô tả. Tôi chưa viết nhiều hình động trên Android, vì vậy tôi không thể nói cho bạn biết mã hoạt hình trông như thế nào, nhưng nói một cách thô thiển, tôi cho rằng đó là những gì tôi mô tả.
jlindenbaum

cảm ơn bạn, youtube.com/watch?v=ANLMaL7zn20 có phải là hiệu ứng tương tự trên iPhone.
MV Harsha


2

Dưới đây là hướng dẫn thiết kế và phát triển được tìm thấy trong tài liệu chính thức của Android không cần thêm thư viện bên ngoài không chính thức. Chỉ có thư viện hỗ trợ Android sẽ làm. Tìm các liên kết ở đây.

thiết kếphát triển .


1

Ứng dụng Facebook Android có thể được xây dựng với Fragment . Menu là một Fragment, Activity chuyên sâu (Newsfeed / Events / Friends, v.v.) là Fragment khác. Về cơ bản bố cục 'chính & chi tiết' trên máy tính bảng.


Trong trường hợp này, chúng ta cần tạo thanh hành động bên trong đoạn, vì vậy chúng ta không thể sử dụng bất kỳ tính năng nào của khung Android để xây dựng nó, phải không? Trên thực tế tôi không thể chắc chắn về facebook, nhưng đối với nhiều nhà phát triển là cách quá khó để tạo thanh hành động mà không có sự trợ giúp của khung, tôi hy vọng thời gian này đã kết thúc.
AlexKorovyansky

1

Để biết thông tin, vì thư viện tương thích bắt đầu bằng 1.6 và ứng dụng facebook này cũng đang chạy trên các thiết bị có Android 1.5, không thể thực hiện được với Fragment.

Cách bạn có thể làm là: Tạo một hoạt động "cơ sở" BaseMothyActivity nơi bạn đặt tất cả logic cho onItemClickListener cho danh sách menu của bạn và xác định 2 hình động ("mở" và "đóng"). Ở phần cuối / bắt đầu của hình động, bạn hiển thị / ẩn bố cục của BaseMothyActivity (hãy gọi nó là menu_layout). Bố cục cho hoạt động này rất đơn giản, nó chỉ là một danh sách với các mục + một phần trong suốt ở bên phải danh sách của bạn. Phần này sẽ có thể nhấp và chiều rộng của nó sẽ có cùng chiều rộng với "nút di chuyển" của bạn. Cùng với đó, bạn sẽ có thể nhấp vào bố cục này để bắt đầu hoạt hình để cho content_layout trượt sang bên trái và chụp toàn bộ màn hình. Đối với mỗi tùy chọn (ví dụ: mục của danh sách menu), bạn tạo một "ContentActivity" để mở rộng BaseMothyActivity. Sau đó, khi bạn nhấp vào một mục trong danh sách, bạn bắt đầu ItemSelectedContentActivity với menu hiển thị (bạn sẽ đóng ngay khi hoạt động của bạn bắt đầu). Các bố cục cho mỗi ContentActivity là FrameLayout và bao gồm và. Bạn chỉ cần di chuyển content_layout và hiển thị menu_layout khi bạn muốn.

Đó là một cách để làm điều đó và tôi hy vọng tôi đã đủ rõ ràng.


1

Tôi đã chơi với điều này trong vài ngày qua và cuối cùng tôi đã đưa ra một giải pháp khá đơn giản và hoạt động trước Honeycomb. Giải pháp của tôi là tạo hiệu ứng cho Chế độ xem tôi muốn trượt ( FrameLayoutđối với tôi) và lắng nghe phần cuối của hình ảnh động (tại thời điểm đó để bù vị trí bên trái / bên phải của Chế độ xem). Tôi đã dán giải pháp của mình ở đây: Cách tạo hiệu ứng cho bản dịch của Chế độ xem


1

Sau khi tìm kiếm trong vài giờ, tôi thấy giải pháp của Paul Grime có lẽ là giải pháp tốt nhất. Nhưng nó có quá nhiều chức năng trong đó. Vì vậy, nó có thể khó học cho người mới bắt đầu. Vì vậy, tôi muốn cung cấp triển khai của tôi xuất phát từ ý tưởng của Paul nhưng nó đơn giản hơn và dễ đọc.

triển khai thanh menu bên bằng cách sử dụng mã java không có XML


1

Tôi đã không thấy SimonVT / android-menudrawer tuyệt vời được đề cập ở bất cứ đâu trong các câu trả lời ở trên. Vì vậy, đây là một liên kết

https://github.com/SimonVT/android-menudrawer

Nó rất dễ sử dụng và bạn có thể đặt nó ở bên trái, phải, trên hoặc dưới. Tài liệu rất tốt với mã mẫu và giấy phép Apache 2.0.


0

Vào tháng 6 năm 2012, Google đã thêm "các mẫu" trong plugin ADT của Eclipse và có một mẫu có tên là "luồng chính / chi tiết" thực hiện chính xác điều đó (dựa trên các đoạn mã)


1
Luồng chính / chi tiết không phải là một menu thanh bên trong câu hỏi. Nó chỉ là hai mảnh được hiển thị cùng nhau (máy tính bảng) hoặc riêng biệt (điện thoại).
tomash

Chà, vào tháng 6 năm 2013, Giao diện ngăn kéo điều hướng đã được thêm vào, đây là thứ tương tự cần hơn ở đây, nhưng ActionBar sẽ không trượt với ngăn kéo như thanh trượt kiểu Facebook cần ở đây.
Khulja Sim Sim
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.