我正在编写一个 Android 应用程序,通过电子邮件向用户发送报告。我见过一些应用程序启动了可用于发送电子邮件的其他已安装应用程序的列表,我想知道如何做到这一点。
您如何从已安装的应用程序列表中筛选出哪些应用程序用于电子邮件?
我正在使用此代码来应用具有透明背景的颜色。
dialog.getWindow().setBackgroundDrawable(new ColorDrawable(MyColor));
Run Code Online (Sandbox Code Playgroud)
它在手机上效果很好,但在平板电脑上无法正常工作
显示在我的方格上有白色和灰色背景(我使用自定义视图,背景设置为@null):
我有一个 FragmentActivity 正在启动另一个结果活动。当被调用的活动完成时,不会调用 onActivityResult。我使用 AppCompatActivity 活动(从 FragmentActivity 扩展)有什么不同吗?文档说结果将返回给调用片段,在这种情况下,它不是片段,而是一个活动。这是代码,非常简单:
主要活动:
public class SMSEmailActivityNew extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//setup activity....
Intent i = new Intent(this, EulaActivity.class);
i.putExtra(Globals.keyFileName,Globals.FILE_EULA );
startActivityForResult(i,RESULT_OK);
}
//this method is never called
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
//dowork .....
}
}
Run Code Online (Sandbox Code Playgroud)
调用的活动:
EulaActivity extends AppCompatActivity implements OnClickListener {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//set up activity ....
}
public void onClick(View v) { …Run Code Online (Sandbox Code Playgroud) 我有一个矢量图像,我想将其放在按钮上。不幸的是,我的图像显示为白色背景。如何用按钮的颜色填充背景?
这是按钮的代码。
@Composable
fun UserEducationPrimaryButton(
primaryButtonText: String,
primaryButtonClick: (() -> Unit)?,
showButtonArrow: Boolean
) {
val displayUtils = get<DisplayUtils>()
val configuration = LocalConfiguration.current
val screenWidth = displayUtils.convertDpToPixels(configuration.screenWidthDp * 1.0f)
val dpSize = DpSize(width = Dp(screenWidth.toFloat()), height = 52.dp)
// Use the state to change our UI
val interactionSource = remember { MutableInteractionSource() }
val isPressed by interactionSource.collectIsPressedAsState()
val color = if (!isPressed) MaterialTheme.colors.secondary else Color.LightGray
val paddingValues = PaddingValues(horizontal = 32.dp, vertical = 10.dp)
//primary button
Button(
onClick = primaryButtonClick …Run Code Online (Sandbox Code Playgroud) 我有以下代码,在我执行长时间运行的任务之前,我启动了一个环形对话框,在 RxJava2 中完成。问题是对话框没有显示,我认为我没有阻塞主 UI 线程。
fab.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if (ringProgressDialog != null) {
if (ringProgressDialog.isShowing()) {
ringProgressDialog.dismiss();
}
}
ringProgressDialog = ProgressDialog.show(SendConversationsActivity.this,
getResources().getString(R.string.creating_document_progress_dialog_title),
getResources().getString(R.string.conversation_progress_dialog_text),
true, false);
FileNameAndContacts filenameAndContacts = new FileNameAndContacts();
if (tvNoDatSelected.getVisibility() != View.VISIBLE) {
filenameAndContacts.setFileName("");
}
createDocument(filenameAndContacts)
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.doOnError(throwable -> Timber.e(throwable, "Error in getting document"))
.subscribe(fileAndContacts -> {
if (ringProgressDialog.isShowing()) { //debugger says
//dialog is showing.
ringProgressDialog.dismiss();
}
sendDocumentInEmail(fileAndContacts);
});
}
Run Code Online (Sandbox Code Playgroud)
任务正常执行。在我在同一个活动中执行另一个 RXJava 任务之前,我还显示了另一个环进度对话框,这个对话框出现了。
如果我注释掉 RxJava 调用,就会出现对话框。所以 RxJava 调用中的某些东西是阻塞的。
//EDIT 这个简单的 …
我试图为使用 TextField 和 Row 中的 TextField 的美国各州添加一个下拉列表,但第二个 TextField (zip) 未显示。我究竟做错了什么?
这是我声明该行的方式:
Row (Modifier.fillMaxWidth()) {
StateSelection(
onFormChanged = onFormChanged,
selectedLocation = selectedLocation,
label = "State"
)
Spacer(modifier = Modifier.width(8.dp))
ShippingField(
modifier = modifier,
onFormChanged = onFormChanged,
formType = FormType.SHIPPING_ZIP,
label = "Zip",
valueField = selectedLocation.zipCode
)
}
Run Code Online (Sandbox Code Playgroud)
州下拉:
@Composable
fun StateSelection(
onFormChanged: (FormType, String) -> Unit,
selectedLocation: Address,
label: String
) {
// State variables
val statesMap = AddressUtils.mapOfAmericanStatesToValue
var stateName: String by remember { mutableStateOf(selectedLocation.shippingState) }
var expanded by remember …Run Code Online (Sandbox Code Playgroud)