将自定义视图(tileview)添加到布局?

Add custom view (tileview) to layout?

我是 Android 初学者,我想知道如何将自定义视图添加到布局 activity_main.xml

在我的 MainActivity 中,我有以下内容:

@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
        setSupportActionBar(toolbar);         

    }

我想在我的 activity_main 布局中添加一个 Tileview

 TileView tileView = new TileView( this );
  tileView.setSize( 2000, 3000 );  // the original size of the untiled image
  tileView.addDetailLevel( 1f, "tile-%d-%d.png");
  setContentView( tileView );

两者分开工作都很好。虽然我无法创建多个 setContentView,但我想知道如何将 tileView 创建到 activity_main 布局(或 ID)中。我用 LayoutInflater 尝试了几件事,但还没有成功。

提前致谢。

tileview 参见:https://github.com/moagrius/TileView

将框架提供的 ViewGroup 子类之一(例如 LinearLayout)添加到 activity_main.xml 并为其分配一个 ID。它将充当您 TileView 的容器。在您实例化您的 TileView 之后,使用 findViewById 检索此容器并对其调用 addView,提供您刚刚实例化的 TileView 作为参数,以及可选的 LayoutParams 作为参数。

你试过了吗?

setContentView(R.layout.activity_main);

TileView tileView = new TileView( this );
tileView.setSize( 2000, 3000 );  // the original size of the untiled image
tileView.addDetailLevel( 1f, "tile-%d-%d.png");

((RelativeLayout)findViewById(R.id.rootView)).addView(tileView);

如果您的 activity_main 的根视图是 RelativeLayoutandroid:id="@+id/rootView"