我的代码是:
MainActivity.cpp
我只是定义一个按钮来测试pageindicator 而且代码很简单。 单击按钮,pageindicator更改点
package com.example.androidlab;
import greendroid.widget.PageIndicator;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class MainActivity extends Activity {
int i = 0;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final Button btn = (Button) findViewById(R.id.btn);
final PageIndicator pi = (PageIndicator) findViewById(R.id.pi);
pi.setDotCount(5);
pi.setActiveDot(0);
btn.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
pi.setActiveDot((++i) % 5);
}
});
}
}
activity_main.xml中:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<Button
android:id="@+id/btn"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<greendroid.widget.PageIndicator
android:id="@+id/pi"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
</greendroid.widget.PageIndicator>
</LinearLayout>
我使用的是android 2.3.1 sdk
谁能帮助我...... 感谢答案 0 :(得分:2)
我有同样的问题。我不知道为什么会发生这种情况,但由于某种原因myPI.getDotDrawable()
正在返回null
。
我确认源代码和jar文件中存在样式。
我正在查看它以找出错误,虽然在日食布局预览窗口中,点会显示出来。
<强>解决方案:强>
在您的活动中,添加以下内容:
setTheme(com.cyrilmottier.android.greendroid.R.style.Theme_GreenDroid_NoTitleBar);
之前setContentView(...)
现在就像魅力一样:)
答案 1 :(得分:0)
参考this link,如何将android:layout_width="match_parent"
更改为android:layout_width="wrap_content"
。
答案 2 :(得分:0)
只需在styles.xml中的AppThem中添加此项:
<style name="AppTheme" parent="AppBaseTheme">
<item name="gdPageIndicatorStyle">@style/GreenDroid.Widget.PageIndicator</item>
<!-- Now no need to set Theme_GreenDroid in your activity -->
</style>