2015-05-24 59 views
9

Có thể hiển thị cả biểu tượng trang chủ và biểu tượng quay lại trên thanh công cụ không? 1) Có thể thay đổi thứ tự hiển thị biểu tượng nút quay lại và biểu tượng trang chủ hay không. Hiện tại, nút này hiển thị nút mũi tên trước và sau đó là biểu trưng (nút home)Thanh công cụ Android với cả nút home và back

2) Yêu cầu thứ hai là xóa ngăn xếp hoạt động khi nhấp vào biểu tượng màn hình chính và quay lại màn hình trước đó trong trường hợp nút quay lại.

Tôi có mã sau sẽ hiển thị phím mũi tên quay lại và biểu tượng trang chủ được đặt làm biểu tượng. Có thể xử lý các sự kiện nhấp chuột trên cả hai biểu tượng sau:

Toolbar toolbar = (Toolbar)findByViewID(R.id.toolbar); 
toolbar.setNavigationIcon(R.drwable.btn_back); 
setSuppportActionBar(toolbar); 
getSupportActionBar().setLogo(R.drawable.home_icon); 
getSupportActionBar().setDisplayShowTitleEnabled(false); 
getSupportActionBar().setHomeButtonEnabled(true); 
getSupportActionBar().setDisplayHomeAsUpEnabled(true); 

Tôi có thể xử lý biểu tượng mũi tên nhấp chuột bằng cách xử lý nó trong phương pháp onOptionsITemChọn được chọn. Có cách nào để xử lý nhấp vào biểu tượng logo không? Ý tưởng của tôi là sử dụng nút bấm trang chủ để xóa chồng hoạt động và sử dụng nút quay lại để điều hướng trở lại màn hình trước đó.

Tôi đã thử với

toolbar.setNavigationOnClickListener() 

nhưng nó không ảnh hưởng đến nút quay lại nhấp chuột.

Xử lý android.R.id.home hoạt động khi xử lý

onOptionsItemSelected() 
+0

tương tự như http: //stackoverflow.com/questions/26525229/toolbar-navigation-icon-never-set. ??. Thanh công cụ là một nhóm xem. bạn có thể có chế độ xem tùy chỉnh và đặt chúng ở bất cứ nơi nào bạn muốn. – Raghunandan

+0

@Raghunandan, nó không phải là một câu hỏi trùng lặp và tôi sẽ cố gắng với một bố trí tùy chỉnh và đặt nó vào thanh công cụ. Điều đó có thể hiệu quả. –

+0

tôi không bao giờ nói một bản sao của nó. Tôi chỉ muốn biết thanh công cụ của bạn nên trông như thế nào. Bạn có thể có chế độ xem tùy chỉnh và đặt chúng cho phù hợp. – Raghunandan

Trả lời

0
  1. Thiết kế bố trí tùy chỉnh của chúng tôi như là một "toolbar_content.xml" riêng biệt và bao gồm bố trí này bên trong thẻ thanh công cụ trong "main_layout.xml của bạn ".
  2. Viết trình nghe nhấp chuột cho các mục của bạn trong "toolbar_content.xml" trong hoạt động cơ sở của bạn để người nghe sẽ sẵn sàng thông qua ứng dụng.
1

thử với điều này

toolbar.setOnMenuItemClickListener(new Toolbar.OnMenuItemClickListener() { 
     @Override 
     public boolean onMenuItemClick(MenuItem item) { 
      if (item.getItemId() == android.R.id.home) { 
       getActivity().finish(); 
      } 
      return true; 
     } 
    }); 
6

Đối với điều hướng trở lại. Điều này làm việc cho tôi.

@Override 
    public boolean onOptionsItemSelected(MenuItem menuItem) { 
     switch (menuItem.getItemId()) { 
      case android.R.id.home: 
       Intent homeIntent = new Intent(this, HomeActivity.class); 
       homeIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 
       startActivity(homeIntent); 
     } 
     return (super.onOptionsItemSelected(menuItem)); 
    } 
Các vấn đề liên quan