簡體   English   中英

Snackbar動作getView()

[英]Snackbar action getView()

在我的Activity中,我實現了OnClickListener接口

MainActivity extends AppCompatActivity implements View.OnClickListener

init snackbar像這樣:

snackbar = Snackbar.make(view, R.string.msg, Snackbar.LENGTH_LONG);
snackbar.setAction(R.string.action_undo, this);

但我無法在實現的OnClickListener接口方法上處理它

@Override
public void onClick(View v) {
    // this not work!
    // snackbar id is different from snackbar action id
    if (v.getId() == snackbar.getView().getId()) {

    }
}

有人知道如何從小吃店獲取行動視圖?

對於每個SnackbarSnackbar textview資源ID為

    android.support.design.R.id.snackbar_text

Snackbar動作視圖資源ID是

    android.support.design.R.id.snackbar_action

如果我正確理解了您的問題,您希望獲得Snackbar操作資源ID。 你可以很容易地得到它,如上所述和onClick() ,你可以使用它像 -

@Override
public void onClick(View v) {

    if (v.getId() == android.support.design.R.id.snackbar_action) {

    }
}
v.getId()

總是(保留):

android.support.design.R.id.snackbar_action

文件

您可以嘗試在快餐欄上設置操作。

View.OnClickListener snackbarClickListener = new View.OnClickListener() {
         @Override
         public void onClick(View v) {

         }
     };

snackbar = Snackbar.make(view, R.string.msg, Snackbar.LENGTH_LONG);
snackbar.setAction(R.string.action_undo, snackbarClickListener);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM