Вы хотите передать Url
из MainActivity
в OtherActivity
, чтобы пользователь был перенаправлен на него, когда он нажмет на OtherActivity.Button
?
Если да, используйте Intent
передать URL
class OtherActivity : AppCompatActivity(){
companion object {
private const val EXTRA_KEY_URL = "OTHER_DETAIL.EXTRA_KEY_URL"
fun launch(launcher: Activity, url: String) {
val intent = Intent(launcher, OtherActivity::class.java)
.apply {
putExtra(EXTRA_KEY_URL, url)
}
launcher.startActivity(intent)
}
}
private lateinit var url: String
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.other_activity)
url = intent.getStringExtra("EXTRA_KEY_URL")
myButton.setOnClickListener {
// use url here
}
}
}
Как позвонить с вашего MainActivity
val uri = /* your Uri */
val str = uri.toString()
OtherActivity.launch(this, str)
Редактировать в соответствии с вашими потребностями, в Java
public class Options extends AppCompatActivity implements View.OnClickListener {
private static final String EXTRA_KEY_URL = "OTHER_DETAIL.EXTRA_KEY_URL";
Button button;
String url;
public static void start(final Activity launcher, String url) {
Intent intent = new Intent(launcher, Options.class);
intent.putExtra(EXTRA_KEY_URL, url)
launcher.startActivity(intent);
}
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_options);
url = getIntent().getStringExtra("EXTRA_KEY_URL")
button=(Button)findViewById(R.id.button);
button.setOnClickListener(this);
}
public void onClick(View view) {
/* use url*/
}
}
Затем в MainActivity
public void onClick(View view) {
if (view.getId() == R.id.info) {
// get your url
String url = ""; //TODO
OtherActivity.launch(this, url);
}
}