我随机获得空指针异常,通常它工作,有时它崩溃,我搜索了很多,但没有得到任何帮助,因为它没有正确的线从我得到任何帮助,
我也在使用处理程序.
我的logcat错误如下,代码添加在它下面,
java.lang.NullPointerException: Attempt to invoke virtual method 'int android.text.Layout.getLineCount()' on a null object reference
at android.widget.TextView.onMeasure(TextView.java:6703)
at android.view.View.measure(View.java:17547)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5535)
at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1436)
at android.widget.LinearLayout.measureVertical(LinearLayout.java:722)
at android.widget.LinearLayout.onMeasure(LinearLayout.java:613)
at android.view.View.measure(View.java:17547)
at android.widget.RelativeLayout.measureChildHorizontal(RelativeLayout.java:727)
at android.widget.RelativeLayout.onMeasure(RelativeLayout.java:463)
at android.view.View.measure(View.java:17547)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5535)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:436)
at android.support.v7.internal.widget.ContentFrameLayout.onMeasure(ContentFrameLayout.java:135)
at android.view.View.measure(View.java:17547)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5535)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:436)
at android.view.View.measure(View.java:17547)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5535)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:436)
at android.view.View.measure(View.java:17547)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5535)
at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1436)
at android.widget.LinearLayout.measureVertical(LinearLayout.java:722)
at android.widget.LinearLayout.onMeasure(LinearLayout.java:613)
at android.view.View.measure(View.java:17547)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5535)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:436)
at com.android.internal.policy.impl.PhoneWindow$DecorView.onMeasure(PhoneWindow.java:2615)
at android.view.View.measure(View.java:17547)
at android.view.ViewRootImpl.performMeasure(ViewRootImpl.java:2015)
at android.view.ViewRootImpl.measureHierarchy(ViewRootImpl.java:1173)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1379) …
Run Code Online (Sandbox Code Playgroud) 这是我的 FirebaseOTPVerificationOperation 类,其中定义了我的 MutableStateFlow 属性,并更改了值,
@ExperimentalCoroutinesApi
class FirebaseOTPVerificationOperation @Inject constructor(
private val activity: Activity,
val logger: Logger
) {
private val _phoneAuthComplete = MutableStateFlow<PhoneAuthCredential?>(null)
val phoneAuthComplete: StateFlow<PhoneAuthCredential?>
get() = _phoneAuthComplete
private val _phoneVerificationFailed = MutableStateFlow<String>("")
val phoneVerificationFailed: StateFlow<String>
get() = _phoneVerificationFailed
private val _phoneCodeSent = MutableStateFlow<Boolean?>(null)
val phoneCodeSent: StateFlow<Boolean?>
get() = _phoneCodeSent
private val _phoneVerificationSuccess = MutableStateFlow<Boolean?>(null)
val phoneVerificationSuccess: StateFlow<Boolean?>
get() = _phoneVerificationSuccess
fun resendPhoneVerificationCode(phoneNumber: String) {
_phoneVerificationFailed.value = "ERROR_RESEND"
}
}
Run Code Online (Sandbox Code Playgroud)
这是我的视图模式,我在那里监听 stateflow 属性的变化,如下所示,
class OTPVerificationViewModal @AssistedInject constructor(
private …
Run Code Online (Sandbox Code Playgroud) kotlin kotlin-coroutines kotlin-coroutines-flow kotlin-coroutine-channel
我实现的布局如下图所示:
我使用的代码是:
<CheckedTextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/big_green_btn_normal"
android:checkMark="@drawable/check_circle"
android:gravity="center_vertical"
android:text="@string/register_tempClickStaffingAgreement" />
Run Code Online (Sandbox Code Playgroud)
这就是我想要的,如下图所示:
分享一些想法来定制它,但不是自定义线性或任何其他布局..我想要一个自定义视图或checkedTextView ...任何帮助将不胜感激.
谢谢..!!
当我滚动我的recyclerview太快时,我得到了以下崩溃
java.lang.IllegalArgumentException: Scrapped or attached views may not be recycled. isScrap:false isAttached:true
at android.support.v7.widget.RecyclerView$Recycler.recycleViewHolderInternal(RecyclerView.java:5659)
at android.support.v7.widget.RecyclerView$Recycler.recycleView(RecyclerView.java:5603)
at android.support.v7.widget.GapWorker.prefetchPositionWithDeadline(GapWorker.java:277)
at android.support.v7.widget.GapWorker.flushTaskWithDeadline(GapWorker.java:324)
at android.support.v7.widget.GapWorker.flushTasksWithDeadline(GapWorker.java:337)
at android.support.v7.widget.GapWorker.prefetch(GapWorker.java:344)
at android.support.v7.widget.GapWorker.run(GapWorker.java:370)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:5417)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
Run Code Online (Sandbox Code Playgroud)
我已经尝试了我的所有努力,并在stackoverflow上得到类似的问题,但没有一个像下面的链接一样有用,
我不知道它发生在哪里的崩溃.任何帮助将不胜感激.我既不使用"android:animateLayoutChanges ="true"
基本上我曾尝试合并这两个不同的GitHub项目,
我的文件链接如下,来自pastbin,
android android-viewholder recycler-adapter android-recyclerview
我使用切换案例枚举,但我收到以下错误:
NEWS FEED在FragmentName中不是常量
这是我的枚举字符串常量,
public enum FragmentName{
FRAGMENT_NEWSFEED("NEWS FEED"),
FRAGMENT_MESSAGES("MESSAGES"),
FRAGMENT_EVENTS("EVENTS"),
FRAGMENT_WHOISAROUDNME("WHOS AROUND");
private final String text;
private FragmentName(final String text) {
this.text = text;
}
@Override
public String toString() {
return text;
}
}
//This is my function from where i check for corresponding enum constant
public void changeTitle(String title) {
switch (Enums_String.FragmentName.valueOf(title)) {
case FRAGMENT_NEWSFEED:
System.out.println("1");
break;
case FRAGMENT_EVENTS:
System.out.println("2");
break;
case FRAGMENT_MESSAGES:
System.out.println("3");
break;
case FRAGMENT_WHOISAROUDNME:
System.out.println("4");
break;
}
}
Run Code Online (Sandbox Code Playgroud)
我打电话的时候
changeTitle("NEWS FEED");
Run Code Online (Sandbox Code Playgroud)
它会在changeTitle函数中创建一个异常,即使传递的值是相同的,所以任何帮助都会受到赞赏,因为我已尽力解决这个问题.
我想把图像粘贴CollapsingToolbarLayout
在折叠时的背景上.我能够以展开的形式显示图像CollapsingToolbarLayout
但是当折叠的图像消失时,我想要以下GIF图像的效果:
我的结构如下:
<android.support.design.widget.AppBarLayout
android:id="@+id/appbar"
android:layout_width="match_parent"
android:layout_height="192dp"
android:fitsSystemWindows="true"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar">
<android.support.design.widget.CollapsingToolbarLayout
android:id="@+id/collapsing_toolbar"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
app:contentScrim="@color/colorGreen"
app:expandedTitleMarginBottom="32dp"
app:expandedTitleMarginEnd="64dp"
app:expandedTitleMarginStart="48dp"
app:layout_scrollFlags="scroll|exitUntilCollapsed">
<ImageView
android:id="@+id/prof_img_picBackground"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@mipmap/ic_launcher"
ndroid:fitsSystemWindows="true"
app:layout_collapseMode="pin"/>
<android.support.v7.widget.Toolbar
android:id="@+id/anim_toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
app:layout_collapseMode="pin"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light" />
</android.support.design.widget.CollapsingToolbarLayout>
</android.support.design.widget.AppBarLayout>
<android.support.v4.widget.NestedScrollView
android:id="@+id/scroll"
style="@style/overscroll_remove"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:clipToPadding="false"
app:layout_behavior="@string/appbar_scrolling_view_behavior"/>
Run Code Online (Sandbox Code Playgroud)
任何帮助将不胜感激,提前感谢.
目前我正在尝试从SD卡或任何应用程序中选择特定类型的文件,但我失败了,我的代码如下,
Intent intent;
if (Build.VERSION.SDK_INT > Build.VERSION_CODES.KITKAT)
intent = new Intent(Intent.ACTION_OPEN_DOCUMENT);
else
intent = new Intent(Intent.ACTION_GET_CONTENT);
intent.setFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);
intent.addCategory(Intent.CATEGORY_OPENABLE);
intent.setType("application/pdf|application/msword|application/vnd.openxmlformats-officedocument.wordprocessingml.document" +
"|application/vnd.openxmlformats-officedocument.wordprocessingml.template" +
"|application/vnd.ms-word.document.macroEnabled.12" +
"|application/vnd.ms-word.template.macroEnabled.12" +
"!application/vnd.ms-word.template.macroEnabled.12|application/rtf");
startActivityForResult(intent, Constants.ImagePicker.REQ_PICK_RESUME);
Run Code Online (Sandbox Code Playgroud)
但它只选择每种类型的文件.
android document android-intent android-gallery android-external-storage
我只是想知道,Android 如何在 RTL 模式下使用自定义视图画布。与此示例一样,问题链接。
它适用于英语语言环境,但当语言环境更改为阿拉伯语时,其文本(+)消失。
所以我不想要答案,我基本上想知道 RTL 画布是如何工作的。
在 hilt 更新到 2.32-alpha 后,我收到以下错误。
\n即使提供了相关元素后,它仍然在抱怨。\n我很确定它与范围有关,但无法对其进行排序,日志如下,
\n ^C:\\Users\\VikramSingh\\Desktop\\work\\Mine\\mobiquity\\app\\build\\generated\\source\\kapt\\debug\\reprator\\mobiquity\\MobiQuityApp_HiltComponents.java:145: error: [Dagger/MissingBinding] @dagger.hilt.android.qualifiers.ActivityContext android.content.Context cannot be provided without an @Provides-annotated method.\n public abstract static class SingletonC implements HiltWrapper_ActivityRetainedComponentManager_ActivityRetainedComponentBuilderEntryPoint,\n ^\n A binding with matching key exists in component: reprator.mobiquity.MobiQuityApp_HiltComponents.ActivityC\n @dagger.hilt.android.qualifiers.ActivityContext android.content.Context is injected at\n reprator.mobiquity.addcity.di.AddCityModule.provideGeoCoder(context)\n android.location.Geocoder is injected at\n reprator.mobiquity.addcity.di.AddCityModule.provideReverseGeoCoding(geoCoder)\n reprator.mobiquity.addcity.ReverseGeoCoding is injected at\n reprator.mobiquity.addcity.AddLocationViewModal(\xef\xbf\xbd, reverseGeoCoding, \xef\xbf\xbd)\n reprator.mobiquity.addcity.AddLocationViewModal is injected at\n reprator.mobiquity.addcity.AddLocationViewModal_HiltModules.BindsModule.binds(arg0)\n @dagger.hilt.android.internal.lifecycle.HiltViewModelMap java.util.Map<java.lang.String,javax.inject.Provider<androidx.lifecycle.ViewModel>> is requested at\n dagger.hilt.android.internal.lifecycle.HiltViewModelFactory.ViewModelFactoriesEntryPoint.getHiltViewModelMap() [reprator.mobiquity.MobiQuityApp_HiltComponents.SingletonC ? reprator.mobiquity.MobiQuityApp_HiltComponents.ActivityRetainedC ? reprator.mobiquity.MobiQuityApp_HiltComponents.ViewModelC][WARN] Incremental annotation processing requested, but support is disabled because …
Run Code Online (Sandbox Code Playgroud) 我有一个edittext,其中一个图像可绘制,左侧带有不可编辑的前缀editext,但现在我想让它支持rtl。尽管我付出了努力,但我还是无法支持 rtl。
我的自定义类如下,
public class PrefixedEditText extends TextInputEditText {
private String mPrefix = "+"; // can be hardcoded for demo purposes
private Rect mPrefixRect = new Rect(); // actual prefix size
public PrefixedEditText(Context context, AttributeSet attrs) {
super(context, attrs);
}
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
getPaint().getTextBounds(mPrefix, 0, mPrefix.length(), mPrefixRect);
mPrefixRect.right += getPaint().measureText(" "); // add some offset
super.onMeasure(widthMeasureSpec, heightMeasureSpec);
}
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
canvas.drawText(mPrefix, super.getCompoundPaddingLeft(), getBaseline(), getPaint());
}
@Override
public int getCompoundPaddingLeft() { …
Run Code Online (Sandbox Code Playgroud) android android-custom-view right-to-left android-edittext android-canvas
基本上我想创建一个布局或以编程方式用a夸大布局RecyclerView
,但是无法这样做.我知道如何通过膨胀来处理xml,但出于好奇,我想以编程方式进行操作.
我的适配器代码如下:
public class ACShare extends RecyclerView.Adapter<ACShare.VHShare>{
private List<Integer> listDrawalbe;
public ACShare(Context context) {
TypedArray drawables = context.getResources().obtainTypedArray(R.array.s_array_contact_us_share);
listDrawalbe=new ArrayList<>();
for (int i = 0; i < drawables.length(); ++i)
listDrawalbe.add( drawables.getResourceId(i, -1));
}
@Override
public VHShare onCreateViewHolder(ViewGroup parent, int viewType) {
return new VHShare(LayoutInflater.from(parent.getContext()).inflate(-1,parent,false));
}
@Override
public void onBindViewHolder(VHShare holder, int position) {
holder.imageView.setImageResource(listDrawalbe.get(position));
}
public class VHShare extends RecyclerView.ViewHolder
{
public ImageView imageView;
public LinearLayout ll;
public VHShare(View itemView) {
super(itemView);
Context context= GeneralFunction.getActivity(itemView);
ll = new …
Run Code Online (Sandbox Code Playgroud) 我创建了一个AlertDialog
并且想要更改AlertDialog的标题颜色但是在每次尝试中都失败了.它的工作原理很细上Android 5.0
与标题颜色和上面为黑色,但是当它运行下面的是Android 5.0,它的标题颜色获取的变成白色,我用了风格和许多其他来源来自互联网但失败了,我的代码如下,
AlertDialog.Builder builder = new AlertDialog.Builder(context);
builder.setMessage(msg)
.setCancelable(true)
.setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int id) {
dialog.dismiss();
}
});
final AppCompatDialog dialog = builder.create();
dialog.setTitle("VALIDATION_TITLE error");
dialog.setCancelable(false);
dialog.show();
Run Code Online (Sandbox Code Playgroud)
我的问题通过以下方式得到解决,
dialog.setTitle( Html.fromHtml("<font color='#FF7F27'>Set IP Address</font>"))
Run Code Online (Sandbox Code Playgroud)
但我不想用这个,任何帮助都会非常感激.您可以通过此聊天链接查看我的对话框的屏幕截图
android ×10
kotlin ×2
textview ×2
android-collapsingtoolbarlayout ×1
canvas ×1
dagger-2 ×1
dagger-hilt ×1
document ×1
enumeration ×1
enums ×1
java ×1