我有了在最上面一欄四個扣,我使用此佈局中的所有活動,通過包括在所有活動中常見的佈局由使用通用佈局及其所有活動
<include ... >
但我必須在所有活動中使用4個按鈕單擊事件 是否有任何comman方法來創建用於所有活動的自定義活動,我已創建活動並在該活動中實現4按鈕單擊事件並擴展在所有活動中這種活動,但它不適合我。 請給我一些想法。 感謝
我有了在最上面一欄四個扣,我使用此佈局中的所有活動,通過包括在所有活動中常見的佈局由使用通用佈局及其所有活動
<include ... >
但我必須在所有活動中使用4個按鈕單擊事件 是否有任何comman方法來創建用於所有活動的自定義活動,我已創建活動並在該活動中實現4按鈕單擊事件並擴展在所有活動中這種活動,但它不適合我。 請給我一些想法。 感謝
是的,你可以讓一個活動說HeaderActivity
在onCreate setContentView(R.layout.header);
設置header.xml
,並在這個類一次寫你的所有按鈕的Click事件和
現在在其他活動中擴展HeaderActivity。 等,
public class SecondActivity extends HeaderActivity
{
}
爲了顯示不同的佈局..
放的LinearLayout在低於按鈕header.xml和在彼此活動中使用
ViewGroup vg = (ViewGroup) findViewById(R.id.lldata);
ViewGroup.inflate(getApplicationContext(), R.layout.listwitter, vg);
這裏lldata是在的LinearLayout頭.xml
在diff活動中顯示不同的佈局。
謝謝,我用我的項目類似的實現,但我有[此問題](http://stackoverflow.com/q/11522798/840669)。請回答如果你能弄清楚是什麼問題。 – Rajkiran
魔獸世界。工作完美。非常感謝.. – sandeepmaaram
你應該能夠像你說的那樣使用基本的OOP策略。創建處理onClick事件的父級活動。那麼你的所有活動都應該延伸那個父母。只要這些方法不是私人的,它們就會自動訪問onClick事件。
如果您需要在每個活動中對onClicks做不同的事情,則可能值得以不同的方式處理,或者使用回調風格。基本結構的例子:
public class ParentActivity extends Activity {
public void onMyButtonClick(View v) {
// do your thing
}
}
public class ChildActivity extends ParentActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// your activity
}
}
我已經做到了,但點擊Parentactivity的事件不是工作ChildActivity – bindal
你好Bindalbhai ..
MainActivity myAct = (MainActivity) this.getParent();
TextView myTitleText = (TextView)myAct.findViewById(R.id.txtTitle);
這可能是幫助你。或者您可以使用ViewGroup爲此。
謝謝。
創建靜態對象以偵聽按鈕單擊。基於此對象處理所有活動中的事件。
例如說常量。類:
public class Constants {
private static int buttonState1;
public static int getButtonState(){
return buttonState1;
}
public static int setButtonState(int x){
buttonState1=x;
}
}
而在你的活動:
Button bt1=(Button) findViewById(R.id.bt1);
bt1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Constants.setButtonState(1);
}
});
而在其他活動
if(Constants.getButtonState()==1)
//do something
定義頁眉佈局具有4個按鈕和定義的android:的onClick內XML屬性佈局例如android:onClick="btnHomeClick"
,android:onClick="btnSearchClick"
....等。
通過擴展活動定義一個抽象類,並實現所有這些點擊的方法:
public void btnHomeClick(View v) {
}
public void btnSearchClick(View v)
{
}
包括由標記,標題佈局在XML佈局文件。 現在在您的每個活動類中擴展上述活動類。
這樣你只需要定義一個click事件一次。
非常感謝! @Paresh Mayani :) –
@VishalPatoliyaツ很高興它幫助你! –
你好,你在你的應用程序中使用標籤的活動? – anddev
是你mansi vora和我不使用選項卡Actvity – bindal
它應該工作。你可以發佈你的代碼 – pankajagarwal