2016-10-05 234 views
0

我需要創建兩個MaterialDrawer爲同一活動並在它們之間進行切換。但是我需要在屏幕上顯示抽屜時更新這些項目。視圖切換

通過我們爲MaterialDrawer的性能,另外一個抽屜佈局的變化抽屜關閉後,只能是可見的,並再次觸摸抽屜切換。

在抽屜之間切換時,是否可以在佈局中進行刷新,在抽屜顯示期間進行無效操作或進行更改通知,以便動態顯示更改?

謝謝 亞歷山大比安奇

+0

爲什麼需要2個不同的抽屜?難道只能在運行時切換項目嗎? – mikepenz

+0

嗨邁克。可以在物品之間切換,但我認爲只有在關閉並再次打開物料抽屜之後。我想切換,看看其他材料拉絲改變舊料抽屜,就像我們可以改變從一個文本框文本。可能嗎 ? –

回答

0

MaterialDrawer配備了一個易於使用的API,這將允許你修改的項目,在Drawer在運行時顯示,而無需創建一個新的Drawer對象的要求。

您可以通過removeAllItems方法在任何時間刪除列表中的當前項目。 https://github.com/mikepenz/MaterialDrawer/blob/develop/library/src/main/java/com/mikepenz/materialdrawer/Drawer.java#L747

而且你可以在相同的風格通過addItems方法很容易地添加新的項目:https://github.com/mikepenz/MaterialDrawer/blob/develop/library/src/main/java/com/mikepenz/materialdrawer/Drawer.java#L756

這些變化將直接反映在UI中。

對於一些比較複雜的usecases你也可以考慮用於AccountSwitcher的源代碼,這將開關2只列出了Drawer和它們的動畫:https://github.com/mikepenz/MaterialDrawer/blob/develop/library/src/main/java/com/mikepenz/materialdrawer/AccountHeaderBuilder.java#L1348

+0

謝謝Mike。 –

+0

邁克,你能提供給我的帳戶切換使用情況的例子嗎?你寫的這個鏈接顯示了toggleSelectionList方法。 –

+0

@AlexandreBianchi是的。因爲您希望同時處理列表。這與'AccountHeader'一起使用的真正'AccountSwitcher'是獨立的。以上信息僅顯示我在內部使用的代碼,以便同時處理不同的列表。你仍然可以使用上面提到的removeAllItems,addItems變種。基本上這樣做,沒有保持狀態 – mikepenz