首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

无法在MainActivity(子)中查看在BaseActivity(父)中创建的progressBar?

在MainActivity中无法查看在BaseActivity中创建的progressBar的原因可能是因为progressBar的可见性或访问权限设置不正确。以下是一些可能的解决方案:

  1. 可见性设置:确保在BaseActivity中创建的progressBar的可见性设置为public或protected,以便子类可以访问它。如果可见性设置为private,则无法在子类中直接访问。
  2. 访问权限设置:如果progressBar的可见性设置正确,但仍然无法在MainActivity中访问,可能是因为在BaseActivity中没有提供公共的getter方法来获取progressBar实例。在BaseActivity中添加一个公共的getter方法,以便子类可以通过调用该方法来获取progressBar实例。
  3. 继承关系:确保MainActivity正确地继承自BaseActivity。在MainActivity类的定义中,应该使用extends关键字将MainActivity声明为BaseActivity的子类。例如:public class MainActivity extends BaseActivity。
  4. 布局文件:检查MainActivity的布局文件是否正确地包含了progressBar。确保在布局文件中正确地引用了BaseActivity中创建的progressBar,并设置了正确的ID。

如果以上解决方案都没有解决问题,可能需要进一步检查代码逻辑和调试。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • Vue 组件为何不可以修改组件传递 Prop

    所有的 prop 都使得其父子 prop 之间形成了一个单向下行绑定:级 prop 更新会向下流动到组件,但是反过来则不行。...这样会防止从子组件意外变更级组件状态,从而导致你应用数据流向难以理解。 额外,每次级组件发生变更时,组件中所有的 prop 都将会刷新为最新值。...这意味着你不应该在一个组件内部改变 prop。如果你这样做了,Vue 会在浏览器控制台中发出警告。 如果修改了,Vue 是如何监控到属性修改并给出警告。...initProps时候,defineReactive时通过判断是否开发环境,如果是开发环境,会在触发set时候判断是否此key是否处于updatingChildren中被修改,如果不是,说明此修改来自组件...需要特别注意是,当你从子组件修改prop属于基础类型时会触发提示。 这种情况下,你是无法修改组件数据源, 因为基础类型赋值时是值拷贝。

    2.3K10

    第一行代码——全局大喇叭,详解广播机制

    每当系统时间发生变化onReceive()方法就会被执行 系统时间发生变化时发出就是android.intent.action.TIME_TICKaction所以onCreate()方法创建一个...用AS快捷方式创建BroadcastReceiver已经注册 不过目前BootCompleteReceiver是无法收到开机广播,因为我们还需要对AndroidManifest.xml文件进行修改...所以强制下线逻辑并不是MainActivity写,而应该写在接收这条广播BroadcastReceiver里,这样强制下线功能就不会依附于任何界面 静态注册BroadcastReceiver...无法弹出对话框这样UI控件,又不能在每一个Activity中注册一个动态BroadcastReceiver 只需要在BaseActivity动态注册一个BroadcastReceiver就可以了,...注册ForceOfflineReceiver BaseActivity重写了onResume()和onPause(),然后分别在这两个方法里注册和取消注册ForceOfflineReceiver

    90410

    Android仿iOS实现侧滑返回功能(类似微信)

    " </activity 2、滑动View: 先看看 Activity 层次结构:我们用 Activity xml 根 View 并不是 Activity 根 View ,它上面还有一个...要做到像 iOS 那样可以滑动整个 Activity ,只滑动我们xml里面创建 View 显然是不对,因为我们还有标题栏、ActionBar 什么,所以我们要滑动应该是 DecorView...解决办法就是,我们自己创建一个 SwipeLayout,然后人为地插入顶层 View ,放置 DecorView 和其下面的 LinearLayout 中间,随着手指滑动,不断改变 SwipeLayout... View ——曾经是 DecorView View——位置,这样我们就可以控制 Activity 滑动啦。...我们 Activity onPostCreate 方法调用swipeLayout.replaceLayer 替换我们 SwipeLayout,代码如下: public void replaceLayer

    1.4K10

    【IOC 控制反转】Android 布局依赖注入 ( 布局依赖注入步骤 | 布局依赖注入代码示例 )

    三、博客源码 总结 Android 依赖注入核心就是通过反射获取 类 / 方法 / 字段 上注解 , 以及注解属性 ; Activity 基类 , 获取该注解 以及 注解属性 , 进行相关操作...第三者 加载 Activity 布局 ; Android 布局依赖注入步骤 : ① 客户端 Activity : 定义 MainActivity , 继承 BaseActivity ; ② IOC 库...Activity 类 : 定义 BaseActivity , BaseActivity onCreate 方法 , 处理依赖注入相关逻辑 ; ③ 依赖注入逻辑 : 获取 Activity...应用 , 创建一个 " Android Library " , 设置主应用依赖该 Android 依赖库 : dependencies { implementation project(path...当该 MainActivity 启动时 , 调用 BaseActivity onCreate 方法 * BaseActivity onCreate 方法中注入布局 */ @ContentView

    84610

    广播最佳实践——实现强制下线功能(Android_Broadcast)

    关键词:Broadcast, 生命周期,继承 本项目基本思路: 1.先创建一个ActivityCollector类用于管理所有的活动; 2.然后创建一个BaseActivity类作为所有活动类:...调用ActivityCollector类方法,如类onCreate和onDestroy方法,所有从父类派生出去子类,创建时会被加入ActivityCollector数组activities里面...然后创建一个BaseActivity类作为所有活动类: ? 本类功能有二: 其一,用于辅助统筹管理本项目的所有活动。...如类onCreate和onDestroy方法,所有从本类派生出去子类,创建时会被加入ActivityCollector数组activities里面,销毁时则会从里面被移除; 其二,随后我们将重写本类...修改BaseActivity,动态注册一个广播接收器:重写本类onResume和onPause方法,所有从本类派生出去子类,栈顶状态都会注册一个接收器,失去栈顶位置时候,则将接收器销毁; ?

    99330

    Dagger2-从入门到精通(上)

    对于文字我们不好理解,还是看看在具体应用我们该如何去使用。不过使用之前我们先简单理解及概念。 @Inject: 通常在需要依赖地方使用这个注解。...可以看到我们MainActivity需要ApiService,我们module创建实例。等他需要时候我们就给他。现在module创建好了。...我们还需要调用者(MainActivity)和被调用者(module)之间桥梁,这就是Component。 注意,module,我们创建方法必须是public不可以是privite。...activity); } 注意:inject方法接收类型参数,而调用时传入是子类型对象则无法注入。...比如你想作用BaseActivity,inject()就传入BaseActivity,但是只能作用BaseActivity不能作用子类MainActivity

    1.1K10

    Java 基础巩固:再谈抽象类和接口

    “抽象类和接口”听起来是非常普遍东西,有些朋友会觉得:这个太基础了吧,有啥好说,你又来糊弄我。 事实上我面试不仅一次被问到相关问题: 抽象类和接口之间区别? 什么时候创建抽象类?...于是我们就本着“职责分离”原则, BaseActivity创建了一些抽象方法,要求子类必须实现: public abstract class BaseActivity extends Activity...继承 BaseActivity 类只要实现这些方法,同时为类提供需要内容,就可以和类一样保证代码整洁性。...如果 MainActivity 需要添加其他功能,可以再创建对应接口,然后予以实现。 小结 通过上面的代码例子,我们可以很清晰地了解下面这张图总结内容。...一般人都无法做到白头偕老,所以只有清楚知道需要继承所有方法前提下,才可考虑它。 有一种取代继承方式是 “组合”。

    686100

    【IOC 控制反转】Android 视图依赖注入 ( 视图依赖注入步骤 | 视图依赖注入代码示例 )

    三、博客源码 总结 Android 依赖注入核心就是通过反射获取 类 / 方法 / 字段 上注解 , 以及注解属性 ; Activity 基类 , 获取该注解 以及 注解属性 , 进行相关操作..., 继承 BaseActivity , 属性字段上使用 @BindBiew 注解注入视图 ; ③ IOC 库 Activity 类 : 定义 BaseActivity , BaseActivity..., 执行 findViewById 获取视图组件对象 , 并赋值给 Activity 属性字段 ; 二、Android 布局依赖注入示例 ---- 1、创建依赖注入库 首先在 Android 应用...布局依赖注入 ( 布局依赖注入步骤 | 布局依赖注入代码示例 ) 布局注入 , 抽到 injectLayout 方法 ; 将注入视图组件定义 injectViews 方法 ; package...调用 BaseActivity onCreate 方法 * BaseActivity onCreate 方法中注入布局 */ @ContentView(R.layout.activity_main

    69320

    2.ui

    这个就需要对一个容器多个组件       进行设置权重,同时如果在水平方向线性排列,设置多个组件layout_width="0dp",保证水平方向       上进行等分长度;   等分长度...;          b):相对布局在线性orientation方向和权重在相对布局并不适用;  c):组件默认左对齐、顶部对齐 * 设置组件指定组件右边  android:layout_toRightOf...“一列”   TableLayout一级节点还匹配元素(宽度匹配、但是高度不匹配)。  ...TableRow节点宽和高是包裹内容。...;default:break;} 在按钮点击事件,通过 getVisibility()方法来判断 ProgressBar是否可见,如果可见就将 ProgressBar隐藏掉,如果不可见就将 ProgressBar

    1.6K90

    Android-浅谈广播机制,实现强制下线功能

    Android,每个应用都可以对自己感兴趣广播进行注册,这样程序就只会收到自己所关注广播,这些内容可能来自于系统,也有可能来自于别的app。...标准广播: 是一种完全异步执行广播,广播发出之后,所有的广播接收器都会在同一时间接收到这条广播消息,因此他们之间没有任何先后顺序可言。这种广播效率会比较高,但同时也意味着它是无法被截断。...然后创建BaseActity类作为所有活动类,代码如下 public class BaseActivity extends AppCompatActivity { protected void...然后修改MainActivity代码。...解决办法就是,只需要在BaseActivity动态注册一个广播接收器就可以了,因为所有的活动都是继承自BaseActivity

    88630

    Base封装(二)-- 封装属于自己Library(UI篇)

    ,至于BaseActivity和BaseFragment之前文章都已经分享过了,只不过做了一些优化。...,至于NoScrollViewPager我经常会用到场景就是ViewPager里嵌套ViewPager可能会用到,代码我就不贴了,项目里面都会有的。...model:表示测量规则,共有EXACTLY、AT_MOST、UNSPECIFIED三种 EXACTLY 表示视图希望子视图大小应该是由specSize值来决定,系统默认会按照这个规则来设置视图大小...CircleImageView 圆形头像ImageView我一直都用是这个 https://github.com/hdodenhof/CircleImageView 3.ProgressBar...(例如:MainActivity->activity) WHERE(何处) 描述它在app逻辑模块,如果在多个页面用到使用all,其他就用 使用该资源页面所处逻辑模块 (例如:MainActiviy

    59910

    Eventbus3代码分析(三):注解简单使用

    ---- 注解简单使用 这里目的是为了理解, 和简单使用 这块理解了,后面都是差不多 ---- 简单理解和使用 自己每次onCreate写setContentView(R.layout.xxx...,拿到对应Class类 再通过Class拿到对应注解类AhView1 如果为null,则主动抛出异常 通过AhView1 拿到intR()通过注解设置值 ---- BaseActivity1...写BaseActivity1, onCreate,setContentView(InjectHelper1.injectObject(this)); public class BaseActivity1...这个时候,对应设置,就不用 【方法名 = xxx】了 @AhView(R.layout.activity_main) public class MainActivity extends BaseActivity...https://github.com/2954722256/use_little_demo annotation_test对应Module 供简单参考

    33840

    拖动条SeekBar和星级评分条RatingBar

    前面两期都在学习ProgressBar使用,关于自定义ProgressBar内容后期会继续学习,本期先来学习ProgressBar2个组件SeekBar和RatingBar。...继续使用WidgetSample工程advancedviewsample模块,app/main/res/layout/目录下创建seekbar_layout.xml文件,在其中填充如下代码片段: <...同ProgressBar一样,SeekBar也是同样道理可以自定义出来很多不同种类效果。 二、RatingBar 星级评分条与拖动条有相同类:AbsSeekBar,因此它们十分相似。...RatingBar所支持常见XML属性如下: android:isIndicator:是否用作指示,用户无法更改,默认false。 android:numStars:显示多少个星星,必须为整数。...继续使用WidgetSample工程advancedviewsample模块,app/main/res/layout/目录下创建ratingbar_layout.xml文件,在其中填充如下代码片段:

    1.5K90

    Activity启动模式SingleTask和Intent.FLAG_ACTIVITY_CLEAR_TOP区别

    而且每次启动一个 Activity ,都会重新创建实例,不管这个实例在任务是否已经存在。...第一次启动这个 Activity 时,系统便会创建一个新任务栈,并且初始化 Activity 实例,放在新任务栈底部。...还有一点: 无论 Activity 是新任务栈启动还是相同任务栈启动,“返回”按钮始终会将用户带到上一个 Activity。...此时,当前任务栈 现在包括堆栈顶部提出任务所有活动。如果不理解,下图说明这种情况。...是一种单实例模式,在这种模式下,如果该Activity存在,那么多次启动此Activity都不会重新创建实例,而是销毁在它之上所有Activity(不包括它本身),复用该Activity并调用它

    99910

    7.Activity

    创建activity(活动) 新创建activity,必须在清单文件做配置,否则系统找不到,显示时会直接报错 <activity android:name="com.itheima.createactivity.SecondActivity...Back键回到 <em>MainActivity</em>,你会发现刚刚输入<em>的</em>文字全部都没了,因为 <em>MainActivity</em>被重新<em>创建</em>了。...//1.需要新建一个 <em>BaseActivity</em> 继承自Activity,然后<em>在</em> <em>BaseActivity</em><em>中</em>重写 onCreate()方法public class <em>BaseActivity</em> extends...", getClass().getSimpleName()); }}//2.让 BaseActivity 成为 ActivityTest 项目中所有活动类。...BaseActivity onCreate()方法调用了 ActivityCollector addActivity()方法,表明将当前正在创建活动添加到活动管理器里。

    1.3K150
    领券