![](/img/trans.png)
[英]how can i implement two functions for one button onclick in android
[英]can I have two different onclick methods for one button
我想知道一個按鈕是否可以有兩個 onclick 方法..我試圖有一個按鈕可以打開一個新的活動並向服務器發送一個 id 令牌以用於 firebase 目的,如果可能的話,我該怎么做安卓工作室
我認為你的基本概念是錯誤的。
按鈕對點擊做出反應。
在點擊時觸發的“ActionListener”......可以做任何它想做的事情。 沒有什么(概念上)可以阻止您在代碼中觸發各種事情。 當然,您必須了解自己在做什么(例如:不要長時間阻塞 UI 線程;或者如何在后台線程中啟動事物,等等)。
它是一個按鈕,因此您應該只應用一個執行按鈕工作的 onClick 偵聽器。
在您的 onClick 方法中,如果您想在不犧牲代碼管理的情況下執行多項操作,則可以調用另一個(私有)方法。
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
sendTokenToServer();
// Include your code to open the activity here or outsource it again into another private method
}
});
以及將令牌發送到服務器的方法:
private void sendTokenToServer() {
// Your code here.
}
不可以。一個按鈕只有一個 onClick 方法。 但是您仍然可以通過一個按鈕執行兩種不同的目的。 我正在使用按鈕來隱藏和顯示線性布局。 代碼如下:
final int[] count = {2};
//here startTopics is the button....
startTopics.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if(count[0] %2==0)
{
topicLin.setVisibility(View.VISIBLE);
count[0]++;
}
else
{
topicLin.setVisibility(View.GONE);
//here topicLin is the linear layout
count[0]++;
}
}
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.