[英]How to 'link' an activity to a java class in Android Studio
因此,我試圖圍繞 Android Studio 進行思考,但我發現一些非常令人困惑的事情。 當您進行一項新活動時,它還會創建一個 Java class,但將任何內容編碼到該 java ZA2F2ED4F8EBC2CBB4 似乎什么都做不了。 然而,將一些東西編碼到 MainActivity 中。
示例名稱
MainActivity SecondActivity main_activity second_activity
在 second_activity 中為(例如按鈕)添加 onClick 事件,它檢查 MainActivity class 中的公共 void onClickName(){ } 而不是 SecondActivity ZA2F2ED4F8EBC2CBB4C21A29DC40AB61 有什么地方我必須改變嗎?
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent">
<EditText
android:layout_width="match_parent"
android:layout_height="40dp"
android:text=""
android:hint="Player name here"
android:layout_alignParentTop="true"
android:id="@+id/txtName"
android:layout_toStartOf="@+id/btnAddPlayer" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Back to Main menu"
android:id="@+id/button"
android:layout_alignParentBottom="true"
android:layout_alignParentStart="true"
android:onClick="backToMain"/>
<ListView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/spnCharacters"
android:layout_below="@+id/txtName"
android:layout_marginTop="56dp"
android:layout_alignParentEnd="true"
android:background="@drawable/bg_key"/>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Add Player"
android:id="@+id/btnAddPlayer"
android:layout_alignBottom="@+id/txtName"
android:layout_alignParentEnd="true"
android:onClick="addPlayer"/>
然而,SecondActivity 中的 addPlayer 和 backToMain 都沒有做任何事情,但是如果在 MainActivity 他們做我編寫的任何代碼
SecondActivity onCreate
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.second_activity);
}
\\ 確保 Java 文件連接到 XML 文件
Java 文件的第一行應該顯示如下內容
public class balance extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_balance);
}
這意味着我的類(Java 文件)余額連接到活動(布局)activity_balance。
如果不是這種情況,請確保您從(文件>新建>活動>(例如空白活動)添加新活動)
希望這可以幫助
Activity
“是用戶可以做的單一、專注的事情。”。 開發時make an Activity
的內部其實就是幾個action的bundle:
AppCompatActivity
)。AndroidManifest.xml
注冊此Activity
,使用像<activity android:name=".NecessaryActivityName" android:label="@string/optional" android:icon="@drawable/optional"/>
的新標簽,或者您可以指定此Activity
更多詳細信息,例如<intent-filter>
。所以,
當您創建一個新活動時,它也會創建一個 Java 類。
是的。 更好的描述是,“當你創建一個新的Activity
,你正在創建一個擴展Activity
的 Java 類”。
但是將任何內容編碼到該 java 類中似乎沒有任何作用。
“活動是用戶可以做的單一、專注的事情。”。 當您單擊 Launcher(Android 的“桌面”)上的應用程序圖標時,您正在啟動相應的 Activity(更准確地說, 向該 Activity發送Intent
)。
當你創建另一個活動,你願意有Intent
啟動它,加入一個啟動器圖標,或者從其他活動(例如,重定向MainActivity
)。 將它添加到 Launcher 的方法由 @J0B 發布,通過在AndroidManifest.xml
添加<intent-filter>
作為<activity>
的子項。 從另一個 Activity 重定向的方式是構建一個Intent
然后調用startActivity()
,例如在 Java 中:
Intent intent = new Intent(this, SecondActivity.class);
startActivity(intent);
每個 Android 應用程序都包含活動。 每個活動都在 AndroidManifest.xml 中聲明,例如 main_activity.xml 和 MainActivity.java 是一個“活動”。 java類,接口...可以在活動的java控制器部分正常使用。
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
應該是首先啟動的活動的一部分。
為了解決這個問題,只需 go 到您的 activity_second 並在您的 java 文件(SecondActivity)中引用您的 activity_second 之前使用任何調色板工具。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.