2017-02-01 39 views
0

我有理由新的Android工作室,XML和Java創建基於已創建活動和java的

感謝本網站及其所有的幫助,我已經成功地創建一個mainactivity

我mainactivity多個活動創造大約100個按鍵,分別導致了新的活動

我創建了第二個活動,並得到了它的工作,因爲我希望它

我的問題: 我怎麼能複製我的第二個活動100次無覆蓋必須手動創建它們全部?

然後我可以編輯每個活動顯示的圖像/文本/聲音等

爲我的第二個活動包含音頻我會需要創建Java和XML

而且我設計的應用程序與多個工作屏幕尺寸等都將需要複製小/大/ XLARGE XML還

唯一的辦法我可以看到打造這一切都將是非常繁瑣的,因此希望任何幫助,減少了工作量

謝謝提前

我的第二個活動代碼(XML &的Java):

<TextView 
    android:text="my text" 
    android:textSize="16sp" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:id="@+id/txt1" 
    android:layout_alignParentTop="true" 
    android:layout_centerHorizontal="true" /> 

<TextView 
    android:text="blah blah blah" 
    android:textSize="12sp" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:id="@+id/txt1" 
    android:layout_below="@+id/txt1" 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentStart="true" 
    android:layout_marginTop="13dp" /> 

<TextView 
    android:text="blah blah blah" 
    android:textSize="12sp" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:id="@+id/txt2" 
    android:layout_below="@+id/txt1" 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentStart="true" /> 

<TextView 
    android:text="blah blah blah" 
    android:textSize="12sp" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:id="@+id/txt3" 
    android:layout_below="@+id/txt2" 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentStart="true" 
    android:layout_marginBottom="10dp"/> 

<Button 
    android:text="click me" 
    android:textSize="12sp" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:id="@+id/butt1" 
    android:layout_alignParentBottom="true" 
    android:layout_centerHorizontal="true" 
    android:layout_below="@+id/txt3" 
    android:background="@drawable/myimage"/> 

JAVA

 @Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_second); 
    setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT); 

    Button two = (Button)this.findViewById(R.id.butt1); 
    final MediaPlayer mp1 = MediaPlayer.create(this, R.raw.mymp3file); 
    two.setOnClickListener(new View.OnClickListener(){ 

     public void onClick(View v) { 
      mp1.start(); 
     } 
    }); 
} 
+1

顯然你不應該將數據與用戶界面元素混合...如果你的所有活動的行爲相同,但具有不同的數據,那麼顯然它應該是一個活動......所以我認爲這2個活動都是你需要的 – Selvin

+0

謝謝我已經分裂了現在的帖子中的元素:) –

回答

0

如果所有的活動都是一樣的,我只用一個單一的活動,並把你的代碼在onClick的按鈕。如果您需要在那裏,您可以更改UI和工具欄。

+0

聽起來很完美,基本上所有的活動都會與不同的數據相同但是我不確定你的意思是將代碼添加到onclick中 –

+0

每個按鈕都會有一個onclick方法,他們將擴展。對於每個按鈕來說,我的button.setOnClickListener(新的OnClickListener(新的OnClickListener)(點擊返回,它會填寫你的方法,當你點擊它時,你放入onclick的任何東西都會被打電話給你 – dpants

+0

我剛剛意識到你有100個按鈕。如果你只是在學習如何做Android,你可以列出按鈕,但這是一種糟糕的形式,如果是我,我會爲你做一個自定義的按鈕, d有一個自定義按鈕,把我需要的自定義屬性讀入到每個按鈕中,這樣我只需在xml中定義按鈕一次,代碼就會相對乾淨。 – dpants