java - 如何将参数从 Activity 类传递到 Android 中扩展 View 的类

标签 java android android-layout view android-xml

我有一个扩展 Activity 的类。

我还有一个该 Activity 的布局,其中包括 videoviewprogressbar

还有另一个类扩展 View 并在 Activity 布局中的进度条顶部创建矩形。

我希望主布局和 View 类创建的矩形在同一屏幕中可见。

我需要将参数传递给 View 类来设置矩形的位置。

据我所知,您不能从一个 Activity 类中设置 2 种内容类型。

所以我最终从我的布局中调用 View 类,如下所示:

  <com.example.user.CanvasHeat
    android:id="@+id/viewCanvas"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"/>

但是,这样我就无法将参数传递给 CanvasHeat 类。

如果我从 Activity 类创建 CanvasHeat 类,那么我无法同时设置主布局和矩形。

如何在同一屏幕中显示布局和矩形,并将参数传递给 View 类?

谢谢

最佳答案

我看到的唯一方法是在 View 类中声明一些方法,以在 Activity 中膨胀后设置属性。像这样:

class CanvasHeat extends View {
    public void setValue(int value){ ... }
}

然后在您的 Activity 中:

View viewCanvas = findViewById(R.id.viewCanvas);
viewCanvas.setValue(42);

关于java - 如何将参数从 Activity 类传递到 Android 中扩展 View 的类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31367323/

相关文章:

java - 滚动时根据回收站 View 标题更改选项卡

java - java中出生日期的日期比较

java - Android Studio 倒数计时器

java - Java内部的反射

java - 从 ArrayList 中的对象的参数中检索值?

java - 运行两个并行事务

android - 是否可以在微调项 custom_style.xml 中指定多个重力值?

android - 动态设置布局位置

android - 全屏自定义主题

android - 如何在 Ice Cream Sandwich 中设置 TabWidget 的样式?