- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
你好,我的简单 Android 应用程序有问题,它无法更改另一个 Activity 中的文本颜色,即 displayActivity.java
这是我的代码示例。
问题是如果文本都相等它将变成绿色成功
但它确实变成了红色error
主 Activity .java
public class MainActivity extends AppCompatActivity {
public static final String xy = "ict402.germio.intent";
public static final String xz = "ict402.germio.intent";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
public void send(View view){
EditText a = findViewById(R.id.a);
EditText b = findViewById(R.id.b);
String strx =(a.getText().toString());
String stry =(b.getText().toString());
if (strx.compareToIgnoreCase(stry) == 0)
{
// this line WILL print
Intent i = new Intent(this, displayActivity.class);
String t = ("Case Ignored \n VALUES ARE THE SAME CONGRATS!").toString();
i.putExtra(xy,t);
startActivity(i);
} else {
Intent i = new Intent(this, displayActivity.class);
String y = ("Case Ignored \n VALUES ARE NOT THE SAME SORRY!").toString();
i.putExtra(xz,y);
startActivity(i);
}
}
}
显示 Activity .java
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_display);
Intent i = getIntent();
String message = i.getStringExtra(MainActivity.xy);
TextView t = findViewById(R.id.x);
t.setTextColor(getResources().getColor(R.color.success));
t.setText(message);
Intent o = getIntent();
String msg = o.getStringExtra(MainActivity.xz);
TextView q = findViewById(R.id.x);
q.setTextColor(getResources().getColor(R.color.error));
q.setText(msg);
}
}
最佳答案
错误的地方太多了。这是一个替代品:
public void send(View view) {
String editTextAContents = findViewById(R.id.a).getText().toString();
String editTextBContents = findViewById(R.id.b).getText().toString();
Intent intent = new Intent(this, DisplayActivity.class);
if (editTextAContents.equalsIgnoreCase(editTextBContents)) {
intent.putExtra("message", "Case Ignored \n VALUES ARE THE SAME CONGRATS");
intent.putExtra("error", false);
} else {
intent.putExtra("ict402.germio.intent", "Case Igored \n VALUES ARE NOT THE SAME SORRY!");
intent.putExtra("error", true);
}
startActivity(intent);
}
在 DisplayActivity 中:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_display);
Intent intent = getIntent();
String message = intent.getStringExtra("message");
boolean hasError = intent.getBooleanExtra("error", false);
TextView textView = findViewById(R.id.x);
textView.setText(message);
if (hasError) {
textView.setTextColor(ContextCompat.getColor(this, R.color.error));
} else {
textView.setTextColor(ContextCompat.getColor(this, R.color.success));
}
}
当您填充Intent
的额外内容时,它们必须具有不同的名称。
当你声明变量时,更详细而不是将它们命名为 x、y、z、a、b、c,这样它们更具可读性。
关于java - setTextColor() - 逻辑错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48248751/
我正在尝试使用UITableViewCell作为我的应用程序中的主题来更改appearanceWhenContainedInInstancesOfClasses中的文本颜色。 这是代码行: [[UIT
你好,我的简单 Android 应用程序有问题,它无法更改另一个 Activity 中的文本颜色,即 displayActivity.java 这是我的代码示例。 问题是如果文本都相等它将变成绿色成功
我开发了带有笔划文字的Button import android.content.Context; import android.content.res.ColorStateList; import
例如, TextView feedback = (TextView) findViewById(R.id.feedback); feedback.setText("good job!"
我得到以下断言失败: -[UITextFieldLabel setTextColor:],/SourceCache/UIKit_Sim/UIKit-1448.89/UILabel.m:314 中的断言
我正在使用 NIAttributedLabel 在文本上显示链接。 NIAttributedLabel *label; label = [[NIAttr
我以编程方式创建此类元素的列表(不是 ListView,只是将它们添加到父级): 另外,我在 values/colors.xml 中定义了一些颜色。如您所见,ID 为“
我写了一个按钮,我想在触摸按钮时更改其文本颜色。代码如下: -(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{ [supe
我正在使用 TextInput 布局创建一个文本输入框。我想根据输入框的不同变体应用可绘制资源和颜色资源。我在res/color和res/drawable目录下创建了不同的xml资源文件。 publi
我正在尝试更改 RadioButton 的文本颜色(这是在 xml 布局中定义并且在 RadioGroup 中)在选择它时。 当我直接在 Eclipse Android 布局中更改文本颜色时编辑器通过
我正在使用以下代码来更改文本的颜色。此代码在某些 Android 设备上工作正常,但对于三星 Note 2 它不起作用。 TextView number=(TextView)findViewById(
为什么只有Android 5.1以上的setTextColor方法不起作用? TextView TextView32 = (TextView) findViewById(R.id.textView32
当调用 setTextColor 时,TextView 变黑或接近黑色。不知道为什么。任何帮助将不胜感激。 目前正在使用 holo.light。 如下设置我的TextView 当我尝试调用
我到处寻找答案,但找不到适合我情况的答案。我有几个问题,也想知道如何包括毫秒倒计时。我正在尝试获取格式为 00.00(秒.毫秒)的倒数计时器。一个按钮用于启动计时器。我使用的时间取决于按下的按钮,5、
每当收到 WM_CTLCOLORSTATIC 时,我都在尝试更改文本颜色。 LRESULT ProcessWindowMessage(_In_ HWND hWnd, _In_ UINT uMsg,
在 Windows 下使用 g++ 编译 c++ 程序时,出现“对`SetTextColor@8'的 undefined reference ”错误。完整的错误日志在这里 http://pastebi
如果在 moveCursor 方法之后使用 setTextColor 方法设置 QTextEdit 颜色,则不会产生任何效果。 terminal = QTextEdit() terminal.setT
我真的很困惑 TextView.setTextColor(int) 完全可以0xFFFFFFFF 作为输入值但不适用于十进制等价物4294967295 现在,我完全理解为什么第二个值完全超出了 int
我在 Android Fragment 中有一个 ListView,在行中填充了一个 SimpleCursorAdapter。 fragment 本身设置为 ListView 的 OnItemClic
这个问题在这里已经有了答案: What is a NullPointerException, and how do I fix it? (12 个答案) 关闭 5 年前。 正常情况下,正常运行。但是
我是一名优秀的程序员,十分优秀!