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

如何在将手机旋转到横向位置后保存onSaveInstanceState()中的文本视图颜色?

在将手机旋转到横向位置后,可以通过以下步骤保存onSaveInstanceState()中的文本视图颜色:

  1. 在Activity的onSaveInstanceState()方法中,将文本视图的颜色值保存到Bundle对象中。可以使用putInt()方法将颜色值以键值对的形式保存到Bundle中。
  2. 在Activity的onCreate()方法中,检查savedInstanceState参数是否为null。如果不为null,说明Activity是由于屏幕旋转重新创建的,可以从savedInstanceState中恢复之前保存的颜色值。
  3. 在onCreate()方法中,通过Bundle对象的getInt()方法获取之前保存的颜色值,并将其应用到文本视图上。

下面是一个示例代码:

代码语言:txt
复制
public class MainActivity extends AppCompatActivity {
    private TextView textView;
    private static final String KEY_TEXT_COLOR = "text_color";

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        textView = findViewById(R.id.text_view);

        if (savedInstanceState != null) {
            int textColor = savedInstanceState.getInt(KEY_TEXT_COLOR);
            textView.setTextColor(textColor);
        }
    }

    @Override
    protected void onSaveInstanceState(Bundle outState) {
        super.onSaveInstanceState(outState);
        int textColor = textView.getCurrentTextColor();
        outState.putInt(KEY_TEXT_COLOR, textColor);
    }
}

在这个示例中,我们通过KEY_TEXT_COLOR常量定义了保存颜色值的键。在onSaveInstanceState()方法中,我们获取了当前文本视图的颜色值,并将其保存到Bundle对象中。在onCreate()方法中,我们检查savedInstanceState是否为null,如果不为null,则从Bundle中获取之前保存的颜色值,并将其应用到文本视图上。

这样,在屏幕旋转后,文本视图的颜色将得到正确的恢复。

腾讯云相关产品和产品介绍链接地址:

  • 腾讯云移动开发平台:https://cloud.tencent.com/product/mpp
  • 腾讯云云原生应用引擎:https://cloud.tencent.com/product/tke
  • 腾讯云数据库:https://cloud.tencent.com/product/cdb
  • 腾讯云服务器:https://cloud.tencent.com/product/cvm
  • 腾讯云音视频处理:https://cloud.tencent.com/product/mps
  • 腾讯云人工智能:https://cloud.tencent.com/product/ai
  • 腾讯云物联网平台:https://cloud.tencent.com/product/iotexplorer
  • 腾讯云存储:https://cloud.tencent.com/product/cos
  • 腾讯云区块链:https://cloud.tencent.com/product/baas
  • 腾讯云元宇宙:https://cloud.tencent.com/product/tc3
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Activity 不只有跳转。功能篇(一)

(只要是在A上实例全部出栈,ABCD,需要用到B,此时栈AB,CD出栈) SingleInstance:对于设置该模式活动(Activity),会创建一个实例保存在新返回栈,这是因为可供其他程序调用这个活动...(),并把保存下来Bundle传给onCreate()和它会默认重建Activity当前视图,我们可以在onCreate(),回复自己数据。...此方法默认实现保存有关Activity视图层次结构状态信息,例如EditText小部件文本或ListView滚动位置。...super.onSaveInstanceState(savedInstanceState); } 恢复您Activity状态   当您Activity在之前被破坏重新创建时,您可以从Bundle...系统通过您Activity恢复您保存状态。

1.1K20
  • Android Heroes Reading Notes 4

    (3)如果应用长时间处于stopped状态并且此时系统内存极为紧张时候,系统就会回收Activity,此时系统在回收之前会回调onSaveInstanceState方法来保存应用数据Bundle。...onSaveInstanceState调用遵循一个重要原则,即当系统“未经你许可”时销毁了你activity,则onSaveInstanceState会被系统调用,这是系统责任,因为它必须要提供一个机会让你保存数据...D,之后D通过Intent跳转到D,栈2不会压入新D,所以2个栈情况没发生改变。...,并解析其中apk文件,最后把它获得应用信息保存到packages.xml文件,当系统应用安装、删除或者升级时,它也会被更新。...(4)Hierarchy Viewer:查看视图工具 2.内存优化 通常情况下我们所说内存是指手机RAM,它包括以下几部分: (1)寄存器:寄存器处于CPU内部,在程序无法控制; (2)

    44410

    安卓activity生命周期_产品生命周期五个阶段

    activity一旦进入paused状态,系统就会调用activityonPause()方法, 该方法可以停止不应该在暂停过程执行操作,暂停视频播放;或者保存那些有可能需要长期保存信息。...系统同样保存了每一个在布局视图的当前状态,如果用户在EditText组件输入了text,它会被保存,因此不需要保存与恢复它。...默认情况下, 系统使用 Bundle 实例来保存每一个View(视图)对象信息(例如输入EditText 文本内容)。...这个方法会默认保存Activity视图状态信息,如在 EditText 组件文本或 ListView 滑动位置。...(savedInstanceState); } Note: 必须要调用 onSaveInstanceState() 方法父类实现,这样默认父类实现才能保存视图状态信息。

    67510

    Android Activity生命周期整理

    在上图展示六个状态,其中三个是属于静态,而另外三个是瞬态直接跳转到下一状态。)。静态便是:Resumed、Paused、Stopped,这三个状态能长时间存在。...而且,我们应该尽量避免保存数据操作时间过程,如需要写入数据库等操作,这会影响用户切换到其他activity用户体验。尽量这些繁杂操作在onStop()方法执行。...当用户在当前界面启动另外一个新activity,当前activity进入stopped状态,当用户按住返回按钮,重新回调onRestart()方法。...不然,视图组件状态,系统其实会自动记录在内存,如在editText,编写用户数据,完全不需要保存,当用户从stopped状态回到resumed状态,editText里内容由系统自动调用。...当程序app启动时,自动加载系统实例状态,呈现在用户面前。前面提到editText文本信息留存,便是最好例证。

    83930

    Android 中文 API (29) —— CompoundButton

    这个函数决不调用一个空状态。 参数 state 返回以前调用onSaveInstanceState()保存下来状态。...这种状态应该只包含非持久或以后不能够重建信息。例如,你决不存储你当前在屏幕上位置,因为这会在视图层面上重新计算放置一个新实例。...你可以存储到这里一些例子:一个文本当前光标的位置(但通常不是文字本身,文字通常保存在内容提供者(content provider)或其他持久储存),一个列表视图中的当前选中项。...返回值 返回一个包含视图当前状态Parcelable对象,或没有什么状态保存时返回null。默认实现返回null。...结束   Android2.3即将发布,翻译组也迅速跟进,已经翻译或正在翻译保持原有版本,新开始翻译直接从新版本开始。

    1.3K30

    ViewModel:持久化、onSaveInstanceState()、UI 状态恢复和 Loader

    注意,很多 UI 数据会自动地被保存和恢复: “该方法默认实现保存了关于 activity 视图层次状态临时信息,例如 EditText 控件文本或者 ListView 控件滚动条位置。”...Activity 在配置更改被创建:Activity 会将本次查询保存onSaveInstanceState() bundle 参数并且 ViewModel 也会将搜索结果缓存起来。...例如,有些 activity 在被用户关闭不会以一个全新状态打开。一般地,当我在 Android 手机上关闭然后重新打开 Chrome 时,返回到了关闭 Chrome 之前正在浏览页面。...Loader 是 UI 控制器用来加载数据。此外,Loader 可以在配置更改期间保留,比如说在加载过程你旋转了手机屏幕。这听起来很耳熟吧!...复杂数据通过本地持久化保存然后用 onSaveInstanceState() 来保存那些复杂数据唯一 ID。ViewModel 在数据加载将他们保存在内存

    3.8K30

    Android CompoundButton

    这个函数决不调用一个空状态。 参数 state 返回以前调用onSaveInstanceState()保存下来状态。...public Parcelable onSaveInstanceState () 允许视图生成一个代表内部状态,以后可用于创建一个与之相同实例。...这种状态应该只包含非持久或以后不能够重建信息。例如,你决不存储你当前在屏幕上位置,因为这会在视图层面上重新计算放置一个新实例。...你可以存储到这里一些例子:一个文本当前光标的位置(但通常不是文字本身,文字通常保存在内容提供者(content provider)或其他持久储存),一个列表视图中的当前选中项。...返回值 返回一个包含视图当前状态Parcelable对象,或没有什么状态保存时返回null。默认实现返回null。

    89920

    ViewModel:持久化、onSaveInstanceState()、UI 状态恢复和 Loader

    注意,很多 UI 数据会自动地被保存和恢复: “该方法默认实现保存了关于 activity 视图层次状态临时信息,例如 EditText 控件文本或者 ListView 控件滚动条位置。”...Activity 在配置更改被创建:Activity 会将本次查询保存onSaveInstanceState() bundle 参数并且 ViewModel 也会将搜索结果缓存起来。...例如,有些 activity 在被用户关闭不会以一个全新状态打开。一般地,当我在 Android 手机上关闭然后重新打开 Chrome 时,返回到了关闭 Chrome 之前正在浏览页面。...Loader 是 UI 控制器用来加载数据。此外,Loader 可以在配置更改期间保留,比如说在加载过程你旋转了手机屏幕。这听起来很耳熟吧!...复杂数据通过本地持久化保存然后用 onSaveInstanceState() 来保存那些复杂数据唯一 ID。ViewModel 在数据加载将他们保存在内存

    1K20

    excel常用操作大全

    如果您在原始证书编号添加19,请在B1单元格写入:=A1 '13 ',然后按回车键。 2.如何在文件下拉窗口底部设置最近运行文件名数量?...单元 方法1:按F5显示“位置”对话框,在参考栏输入要跳转到单位格地址,在单市按“确定”按钮 方法二:点击编辑栏左侧格单元地址框,输入格单元地址 10....14.如何在屏幕上扩大工作空间? 从“视图”菜单,选择“全屏”命令。 15.如何使用快捷菜单?弹出菜单包括一些最常用命令,可以大大提高操作效率。...将它移动到您想要添加斜线,开始位置,按住鼠标左键并将其拖动到结束位置,释放鼠标,绘制斜线。此外,您可以使用“文本框”按钮轻松地在斜线顶部和底部添加文本,但是文本周围有边框。...要取消,请选择中文文本框,弹出菜单,选择“设置文本框格式”“颜色和线条”,然后选择“线条”-“颜色”-“无线条颜色”。 20、如何快速输入数据序列?

    19.2K10

    再看Android官方文档之Activity&Intent

    (这点需要注意) 应用不需在恢复到Resumed状态前重新初始化那些被保存在内存组件,系统在activity已经停止,会将Activity对象保存在内存。...重新创建 onSaveInstanceState 被系统用来恢复之前状态而保存数据被叫做 “instance state” ,它是一些存放在Bundle对象key-value pairs。...当系统调用这个函数,会在Activity被异常Destory时传递 Bundle 对象,这样我们就可以增加额外信息到Bundle保存到系统。...跳转到其他activity或者是点击Home都会导致当前activity执行onSaveInstanceState。...必须要调用 onSaveInstanceState() 方法父类实现,这样默认父类实现才能保存视图状态信息。

    54760

    23个高手都在用Figma小技巧!(2022新专辑)-Part 01

    分享具体文件位置:如果您选择了特定页面、框架或元素,文件将在使用链接打开时跳转到选择。这一点非常棒~ 002....微调文本颜色和数值 选择一个彩色形状并打开颜色菜单,按住 shift 键并上下移动方向键。您可以看到颜色“一点点变化”。如果您使用鼠标滚轮,也可以更改颜色色调。...快速调整字段数值 鼠标悬停在 Figma 某些属性字段上时,会出现一个横向双箭头。只需按下鼠标键 并将箭头从左向右移动,数值就会发生变化。按住shift以增加调整数值速度。...这适用于任何在鼠标悬停在其上时显示横向双箭头字段。 005.复制为PNG而不导出图片 按cmd+ shift+ c(或通过右键菜单访问)框架作为 png 复制到剪贴板。...顺便说一句,您还可以使用您组件并将它们进行布尔运算,它们遵循设置颜色和属性样式。 013.为样式进行分组 你可以在色彩样式面板,对你颜色样式进行组合分组,这样更方便管理。

    3.8K30

    URL2Video:把网页自动创建为短视频

    尤其是视频制作这样一个颇具创意过程,它可以很好地受益于这些工具,因为它需要做出一系列决策,确定哪些内容最适合目标受众,如何在视图中妥善排布现有资源,以及怎样进行时间安排能够带来最具吸引力描述。...这些设计师般熟知启发式算法捕获常见视频编辑样式,包括内容层次结构,限制一个快照信息量及其持续时间,为品牌提供一致颜色和样式等等。...出于研究模型目的,我们域限制在静态网上,这些页面包含HTML层次结构中保存突出资源和标题,这些层次结构遵循最近网页设计原则,鼓励使用重点元素、更清晰部分以及引导读者感知信息视觉焦点顺序。...用户控制 研究原型界面允许用户查看源网页提取每个视频镜头中设计属性,以及重新排版材料,更改细节设计,颜色和字体,并更改限制条件来生成新视频。...请注意它如何在从源网页面捕获视频对字体和颜色选择、时间和内容排序作出自动编辑决定。 URL2Video从我们Google搜索介绍页面(顶部)识别关键内容,包括标题和视频资源。

    3.9K10

    Activity详解(二)——异常情况下生命周期分析

    当系统配置发生改变,Activity会被销毁,其onPause,onStop,onDestroy均会被调用,由于Activity是在异常情况下终止,系统会调用onSaveInstanceState保存当前...当Activity在异常情况下需要重新创建时,系统会默认为我们保存当前Activity视图结构,并且在Activity重启后为我们恢复这些数据。...比如文本框中用户输入数据,ListVIew滚动位置等。这些View相关状态系统都能够默认为我们恢复。...关于保存和恢复View层次结构,系统工作流程是这样:首先Activity被意外终止时,Activity会调用onSaveInstanceState保存数据,然后Activity会委托Window去保存数据...和onRestoreInstanceState来存储和恢复数据,如果一个进程没有四大组件在执行,那么这个进程很快被系统杀死,比较好方法是后台工作放入Service从而保证进程有一定优先级,这样就不会轻易地被系统杀死

    1.8K40

    Echarts 折线图完全配置指南 - 手把手教你设置 Echarts 折线图详细教程

    ,选项:'center'、'left'、'right'、'number'(横向值 px) y: 'top',// 纵向放置位置,选项:'top'、'bottom'、'center'、...设置 X 轴标签 45 度斜着显示 设置图表背景颜色 设置下载图表功能键 在卡拉云图表组件填入代码: option = { title: { text: '卡拉云新用户激活数据...show: true }, dataView : { //数据视图工具,可以展现当前图表所用数据,编辑可以动态更新...//数据视图浮层文本输入区边框颜色 textColor:"#000", //文本颜色。...// enterable: false, // 鼠标是否可进入提示框浮层,默认为false,如需详情内交互,添加链接,按钮,可设置为 true。

    11.6K30

    第1章-Activity生命周期和启动模式(上)

    当Activity处于可能被销毁或要被销毁状态,就会调用onSaveInstanceState 而onRestoreInstanceState则是重建时候被调用 调用时机 onSaveInstanceState...如下情况会调用: 启动了新Activity 按了Home键等等 另外:可以在onCreate里判断bundle是否为null来判断是新建还是重新创建 View 恢复 A系统默认做了一定恢复,视图结构...,LV滑动位置等等(View也有save,restore方法) > PS 看到有的文章说解决Fragment重叠问题,就是注释掉ActivityonSaveInstanceState方法,简直是误人子弟...有机会以后讲 扯远了,保存和恢复View层次结构,系统工作流程是这样子: Activity⇒Window⇒DecorView⇒ContentView⇒View 一层一层委托保存恢复状态 Activity...全部出栈(PS:必须同一个栈) : ABCDE—启动C(SingleTask)→ ABC SingleInstance 单实例模式,栈内单例,一个Activity实例独占一个任务栈,可以说整个手机都只有一个实例

    43640

    Android面试常问基础知识点(附详细解答)

    在当前Activity被销毁前调用onSaveInstanceState(onPause和onStop之间保存),重新创建Activity后会在onCreate调用onRestoreInstanceState...2)有序广播:发送有序广播,广播接收者按预先声明优先级依次接收Broadcast。...对象进行动画操作 有些情况下动画效果只是视图某个属性 & 对象而不是整个视图,现需要实现视图颜色动态变化,那么就需要操作视图颜色属性从而实现动画效果,而不是针对整个视图进行动画操作...屏幕左上角按钮 通过补间动画 移动到屏幕右下角 点击当前按钮位置(屏幕右下角)是没有效果,因为实际上按钮还是停留在屏幕左上角,补间动画只是这个按钮绘制到屏幕右下角,改变了视觉效果而已。...RelativeLayout RelativeLayout按照各子元素之间位置关系完成布局。在此布局子元素里与位置相关属性生效。

    2.5K31
    领券