小编Zer*_*ato的帖子

Android - Locale.toString() 和 Locale.toLanguageTag() 之间有什么区别?

我有一段代码,我正在尝试使用 Spinner View 组件更改应用程序中的语言。在处理这个问题时,我开始意识到我可能没有使用最流畅的方法,但更有趣的是,我注意到两个看起来相同的字符串在比较时并不相等。为什么会这样,如果我想“检查”语言是否是某种语言,我该怎么办?

if (myLocale.toLanguageTag()=="sv") 
{
    //Changing language from Swedish to English
}
else 
{
    Toast.makeText(parent.getContext(),
      myLocale.toString(), Toast.LENGTH_SHORT).show();
   //Here, the toast will tell me what myLocale.toString is "sv", 
   //and so is myLocale.toLanguageTag(). Yet they are not equal...
}
Run Code Online (Sandbox Code Playgroud)

string android locale

5
推荐指数
1
解决办法
2836
查看次数

Android - 如何从主要活动的自定义视图中调用方法?

我创建了一个自定义视图,它将显示一个圆圈(想法是用户将能够以各种方式与此"球"进行交互)从我的主要活动类,我想调整一些"球"属性,在这种情况下改变它的颜色.

我的问题是,当我尝试从我的MainActivity类调用各种方法时,没有任何事情发生(没有错误,应用程序运行但是没有做我想要的)但是如果我从CircleView类中执行它,它可以工作(例如触摸时改变颜色)

这是我的自定义View类(CircleView.java):

public class CircleView extends View {
    private int circleColor = Color.GREEN;
    private Paint paint;

    public CircleView(Context context) {
        super(context);
        init(context, null);
    }


    @Override
    public boolean onTouchEvent(MotionEvent event) {
        switch (event.getAction()) {
            case MotionEvent.ACTION_SCROLL:
                this.circleColor = setRandomColor();
                invalidate();
                break;
            case MotionEvent.ACTION_DOWN:
                this.circleColor = setRandomColor();
                invalidate();
                break;

        }
        return super.onTouchEvent(event);
    }

    public CircleView(Context context, AttributeSet attrs) {
        super(context, attrs);
        init(context, attrs);
    }

    private void init(Context context, AttributeSet attrs) {
        paint = new Paint();
        paint.setAntiAlias(true);
    }

    public void setCircleColor(int circleColor) …
Run Code Online (Sandbox Code Playgroud)

java android

1
推荐指数
1
解决办法
1224
查看次数

标签 统计

android ×2

java ×1

locale ×1

string ×1