我的代码放置在扩展Activity class的类中时有效,但 addRule 会出现编译错误,说明我在扩展ActionBarActivity时未定义。
Error:
The method addRule(int) is undefined for the type ActionBar.LayoutParams
问题:addRule(int) in RelativeLayout.LayoutParams中ActionBar.LayoutParams的替代方法是什么?
private void initializeSlidingLayer() {
LayoutParams myrlp = (LayoutParams) mySlidingLayer.getLayoutParams();
getResources().getDrawable(R.drawable.ic_launcher);
//for bottom
mySlidingLayer.setStickTo(SlidingLayer.STICK_TO_BOTTOM);
myrlp.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM); //THIS LINE THROWS ERROR WITH ACTIONBARACTIVITY
myrlp.width = LayoutParams.MATCH_PARENT;
myrlp.height = getResources().getDimensionPixelSize(R.dimen.layer_width);
//Adding Shadow
mySlidingLayer.setShadowWidthRes(R.dimen.shadow_width);
mySlidingLayer.setShadowDrawable(R.drawable.sidebar_shadow);
//mSlidingLayer.setOffsetWidth(0);
mySlidingLayer.setOffsetWidth(getResources().getDimensionPixelOffset(R.dimen.offset_width));
}
可能与问题无关,但我正在尝试this SlidingLayer Library
答案 0 :(得分:1)
您确定操作栏使用相对布局吗?如果没有,那么您不能将其视为相对布局布局参数,并且只能使用基本layoutParams函数
答案 1 :(得分:0)
我讨厌回答我自己的问题 - 但在我点击提交后,我只想到了一些可以尝试的东西(有效)。
而不是导入:
import android.app.ActionBar.LayoutParams;
我需要导入:
import android.widget.RelativeLayout.LayoutParams;
我仍然可以导入扩展ActionBarActivity。