我想实现什么目标?
我有一个下载图像的任务,但随着屏幕滚动,它将取消以前的下载并开始下载新的图像。我希望当它取消coroutine下载上一个图像时,它会立即停止并释放bandwidth新图像,以便更快地下载。
我已经尝试过什么?
我尝试了多种方法来停止,coroutine但即使在取消后,它仍然会继续进行,直到完成下载coroutine。当我取消它时,它会生成coroutine一个变量并停止调用进一步的挂起函数。但问题是,如果它运行多次或从该任务下载图像,除非完成,否则不会取消。Like 循环将完成其迭代,然后协程将被取消。isActivefalseloop1000000network1000000
我已经尝试过这些但没有成功:
job.cancel()
scope.cancel()
Run Code Online (Sandbox Code Playgroud)
我尝试了很多方法来实现这一目标,但没有找到解决方案。我现在无法在我的项目中使用任何库。
这个用例不是通过线程、执行器服务、协程来实现的。因为所有人的行为都是一样的。
更多类似的问题:
我正在使用Android Studio并在我的主要活动中有一个SwitchCompat小部件.它的默认fontfamily是sans-serif-medium,我把它改成了quicksand_light.我还有一些TextViews,每个fontfamily都设置为quicksand_light.在我的活动的xml文件的设计选项卡上,它显示了具有quicksand_light fontfamily的SwitchCompat,就像TextViews一样,但是当我在手机或模拟器上运行它时,SwitchCompat的fontfamily是sans-serif-medium.有什么额外的东西我需要做更改fontfamily或这是一个错误或这只是我?
我在将横幅广告添加到我的 Android 应用程序的此布局中时遇到问题。但是这个广告没有显示。ActivityMain.java 中的实现没有问题,因为当我添加其他布局时,横幅开始显示。
<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:attribute="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".PlayerActivity">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/gray_background"
android:orientation="vertical">
// facebook banner ad
<LinearLayout
android:id="@+id/banner_container"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:orientation="vertical"
/>
<developer.shivam.library.CrescentoContainer
android:id="@+id/crescentoContainer"
android:layout_width="match_parent"
android:layout_height="440dp"
android:elevation="20dp"
android:scaleType="centerCrop"
attribute:curvature="50dp">
<com.flaviofaria.kenburnsview.KenBurnsView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:src="@drawable/wallpaper" />
<com.cleveroad.play_widget.PlayLayout
android:layout_marginTop="?attr/actionBarSize"
android:id="@+id/ivPhoto"
android:layout_width="260dp"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true" />
</developer.shivam.library.CrescentoContainer>
<include layout="@layout/song_info" />
</LinearLayout>
</android.support.design.widget.CoordinatorLayout>Run Code Online (Sandbox Code Playgroud)
我正在使用react-hook-form来构建一个表单。该表格运行良好,但测试未通过。
react-hook-form当我不使用并通过 onSubmit时测试通过<form onSubmit={onSubmit}>。当我通过 handleSubmit 传递 onSubmit 时<form onSubmit={handleSubmit(onSubmit)}>,它没有通过。
这是我的表格
App.js
import { useForm } from "react-hook-form";
export default function App({ onSubmit = (data) => console.log(data) }) {
const { handleSubmit, register } = useForm();
return (
// <form onSubmit={onSubmit}> <--- This works
// <form onSubmit={handleSubmit(onSubmit)}> <--- This doesn't work
<form onSubmit={handleSubmit(onSubmit)}>
<input
placeholder="Email"
defaultValue=""
key="email"
{...register("email")}
/>
<input
placeholder="Password"
defaultValue=""
key="password"
{...register("password")}
/>
<input type="submit" value="submit" />
</form>
);
}
Run Code Online (Sandbox Code Playgroud)
这是我为其编写的测试
App.test.js
import { …Run Code Online (Sandbox Code Playgroud) javascript reactjs react-testing-library react-hooks react-hook-form
我是android编程的新手,这里是checkButton只能工作一次的代码.当我第二次点击它时没有任何反应.我似乎无法找到问题.
import android.app.AlertDialog;
import android.app.ProgressDialog;
import android.content.Context;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity {
ProgressDialog progress;
Button checkButton;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
checkButton = (Button) findViewById(R.id.button);
checkButton.setOnClickListener(
new View.OnClickListener(){
@Override
public void onClick(View v){
EditText aNumber = (EditText) findViewById(R.id.editText);
String aCount = aNumber.getText().toString();
boolean totalDigit = aCount.length()==16;
if(totalDigit){
if(checkConnectivity()) {
progress = new ProgressDialog(v.getContext());
progress.setTitle("Validating Number");
progress.setMessage("Processing...");
progress.setCancelable(true);
progress.setProgressStyle(ProgressDialog.STYLE_SPINNER);
progress.show();
new …Run Code Online (Sandbox Code Playgroud)android ×4
banner-ads ×1
coroutine ×1
javascript ×1
kotlin ×1
react-hooks ×1
reactjs ×1
switchcompat ×1