package cn.mutils.app.demo;
import android.content.Context;
import android.os.Bundle;
import android.view.View;
import android.widget.LinearLayout;
import cn.mutils.app.demo.ui.BasicActivity;
import cn.mutils.app.io.Extra;
import cn.mutils.core.annotation.res.FindViewById;
import cn.mutils.core.annotation.res.SetContentView;
@SuppressWarnings("unchecked")
@SetContentView(R.layout.activity_shell)
public class ShellActivity extends BasicActivity {
@SuppressWarnings("serial")
public static class ShellExtra extends Extra {
protected String mTitle;
protected String mViewName;
public String getTitle() {
return mTitle;
}
public void setTitle(String title) {
mTitle = title;
}
public String getViewName() {
return mViewName;
}
public void setViewName(String viewName) {
mViewName = viewName;
}
}
@FindViewById(R.id.shell_root)
protected LinearLayout mShellRoot;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
ShellExtra extra = new ShellExtra();
if (extra.getFrom(getIntent())) {
mTitleBoxName.setText(extra.getTitle());
try {
Class<View> viewClass = (Class<View>) Class.forName(extra.getViewName());
View v = viewClass.getConstructor(Context.class).newInstance(getContext());
mShellRoot.addView(v);
bindStateViews();
} catch (Exception e) {
}
}
}
}