gpt4 book ai didi

java - 如何获取发送 Intent 的布局的可读 ID?

转载 作者:行者123 更新时间:2023-11-30 00:51:31 26 4
gpt4 key购买 nike

如何获取特定布局的可读 id?

我的 activity_miejsce.xml 文件 fragment :

            <LinearLayout
android:id="@+id/elementPlace"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:background="@drawable/layout_main_menu_selector"
android:clickable="true"
android:onClick="Place">

...

</LinearLayout>

此布局的 Activity :

public class PlacesActivity extends AppCompatActivity {

LinearLayout element;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_places);

element = (LinearLayout) findViewById(R.id.elementPlace);
}

public void Place(android.view.View v){
Intent place = new Intent(this, Miejsce.class);
place.putExtra("source", element.toString());
startActivity(place);
}}

Miejsce.java(我们 Intent 的目的地):

    @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_miejsce);

Intent src = getIntent();
String source = src.getStringExtra("source");

TextView msg = (TextView) findViewById(R.id.napis);
msg.setText(getIntent().getStringExtra("source"));

Toast.makeText(getApplicationContext(), "Source: " + source, Toast.LENGTH_SHORT).show();
}

结果(来自 Toast):来源:android.widget.LinearLayout{14e02738 V.E...C. ...P....0,165-1080,375#7f0c007e app:id/elementPlace

我想使用特定布局的 id,因为 Miejsce.java 将生成一个依赖于源的布局。例如:有 3 种布局(酒店、加油站、餐厅)。用户点击了其中之一 (@+id/restaurant) 并发送了带有源 ID(触发器)的 Intent 。 Java 代码生成带有餐厅的特定布局。

最佳答案

我会说既然你已经知道了 id 名称,你可以做类似的事情String id_name = "R.id.id_name"并通过您的 Intent 传递它。

关于java - 如何获取发送 Intent 的布局的可读 ID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40952922/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com