我有一个在android中使用片段的splitview项目,其中我使用了一些方法来生成视图,定义了分割的宽度以及设置背景颜色的方法,这里是我的java代码:
public class SplitviewActivity extends FragmentActivity implements
Left.OnButtonClickListener {
LinearLayout LEFT, RIGHT, leftfragmentln, rightfragmentln;
Right rightFr;
Left leftFr;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//reduced the Gray Bar
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
setContentView(R.layout.main);
// initializes the objects
initializer();
// sets the size of the two sides, give the ration here
setSize(20, 80);
// sets the colour of the two sides
setColor(Color.BLUE, Color.RED);
}
public void initializer() {
LEFT = (LinearLayout) findViewById(R.id.lnLeft);
RIGHT = (LinearLayout) findViewById(R.id.lnRight);
leftfragmentln = (LinearLayout) findViewById(R.id.lnLeftFragment);
rightfragmentln = (LinearLayout) findViewById(R.id.lnRightFragment);
rightFr = (Right) getSupportFragmentManager().findFragmentById(
R.id.view_right);
leftFr = (Left) getSupportFragmentManager().findFragmentById(
R.id.view_left);
}
public void setColor(int leftColor, int rightColor) {
// for landscape mode
if ((rightFr != null) && rightFr.isInLayout() && (leftFr != null)
&& leftFr.isInLayout()) {
LEFT.setBackgroundColor(leftColor);
RIGHT.setBackgroundColor(rightColor);
} else {
// for portrait mode
RIGHT.setBackgroundColor(rightColor);
}
}
public void setSize(float leftsize, float rightsize) {
// for landscape mode
if ((rightFr != null) && rightFr.isInLayout() && (leftFr != null)
&& leftFr.isInLayout()) {
android.widget.LinearLayout.LayoutParams par1 = (LayoutParams) LEFT
.getLayoutParams();
android.widget.LinearLayout.LayoutParams par2 = (LayoutParams) RIGHT
.getLayoutParams();
par1.weight = rightsize;
par2.weight = leftsize;
}
}
// a method to add view in a blank xml programatically
public void setView(View leftView, View rightView) {
if ((rightFr != null) && rightFr.isInLayout() && (leftFr != null)
&& leftFr.isInLayout()) {
leftfragmentln.addView(leftView);
rightfragmentln.addView(rightView);
} else {
rightfragmentln.addView(rightView);
}
}
@Override
public void onClickButton(String s) {
if ((rightFr != null) && rightFr.isInLayout()) {
rightFr.setText(s);
} else {
Intent intent = new Intent(this, RightActivity.class);
intent.putExtra("value", s);
startActivity(intent);
}
}
}
现在我想将此代码用作另一个项目中的库,只想调用这些方法来生成视图,定义宽度和设置背景颜色。我尝试过不同的方式,但没有什么能解决我的问题。任何人都能用一个简单的例子来帮助我吗?
答案 0 :(得分:0)
我目前使用普通的java项目执行此操作。 包括我在构建路径中配置
A) 项目:
只需添加您的项目
b)中 订单和出口
选择(检查)您的项目
答案 1 :(得分:0)
右键单击项目窗格中的项目 - >属性 - > Java构建路径 - >项目或图书馆之一!
答案 2 :(得分:0)
在Eclipse中创建新的android项目,然后转到现有项目和
属性=> Android =>是图书馆项目=>打勾这个
然后在新项目中转到
属性=> Android =>添加库项目,然后从列表中选择您的lib项目
您必须让lib项目保持打开状态。 Facebook和Actionbar Sherlock使用了同样的方法。
答案 3 :(得分:0)
右键点击你另一个项目 - >属性 - >选择过滤器类型为android ==>然后转到库==>点击添加===>选择您的项目。