Pergunta

Não sei o que fiz, mas por um período de tempo, meu TabWidget tinha abas de cor branca que pareciam muito boas. Eu nunca defino um tema ou cor de fundo/primeiro plano no meu projeto. Na próxima vez que eu o compilei, ele voltou para as guias cinza. Meu aplicativo está usando o tema escuro padrão. Mesmo se eu definir o tema do aplicativo para acender, as guias ainda estão cinza. Então, obviamente, foi outra coisa que mudou a cor das guias. Alguém sabe como fazer isto?

Foi útil?

Solução

Eu estava tendo um problema devido a um bug no tema leve do Android 1.6 (o texto indicador da guia é branco). Consegui substituir o tema padrão da seguinte forma:

  1. Eu criei um tema personalizado que herdou do tema padrão:

styles.xml:

<style name="MyTheme" parent="@android:style/Theme.Light">
    <item name="android:tabWidgetStyle">@style/LightTabWidget</item>
</style>

<style name="LightTabWidget" parent="@android:style/Widget.TabWidget">
    <!-- set textColor to red, so you can verify that it applied. -->
    <item name="android:textColor">#f00</item>
</style>

Então eu apenas aplico esse tema ao meu aplicativo adicionando android:theme="@style/MyTheme" para o <application /> elemento do meu AndroidManifest.xml.

Outras dicas

Primeiro, certifique-se de que a conta que você está usando para abrir o VS2013 é a conta correta! O que você poderia fazer é abri-lo como admin:

.

para executar o Visual Studio com permissões administrativas no Windows 8, Windows 8.1, Windows Server 2012 ou Windows Server 2012 R2

1.on A tela inicial, digite o Visual Studio. Você deve ver a versão ou versões do Visual Studio que você instalou.

2.Selecione a versão do Visual Studio que você deseja iniciar e, em seguida, trazer o menu de atalho (aparece na parte inferior da tela). Escolha Executar como Administrador.

Quando o Visual Studio é iniciado, (Administrador) aparece após o produto Nome na barra de título.

para executar o Visual Studio com permissões administrativas no Windows 7 ou Windows Server 2008 R2

1.on O menu Iniciar, escolha todos os programas.

2.ina a pasta do Microsoft Visual Studio Versão Selecione o Visual Studio Versão Abra o menu de atalho e escolha Executar como administrador.

Quando o Visual Studio é iniciado, (Administrador) aparece após o produto Nome na barra de título.

http://msdn.microsoft.com/en-us/library/ jj662724.aspx

Se isso falhar, que não deve:

Conceda a função 'sysadmin' para a conta de usuário de desenvolvimento no SQL Server.

.

Os membros da função do servidor fixo Sysadmin podem executar qualquer atividade em o servidor.

http://msdn.microsoft.com/en-us/library/ MS188659.aspx

diretrizes para conceder privilégios SQL Server Sysadmin

http://support.microsoft.com/kb/2184138

A primeira solução deve funcionar como sua execução sob a conta de administrador e já teria sysadmin amarrado a ele ..... a menos que durante a instalação alguma coisa aconteceu! Se você quiser conceder um usuário (diferente conta de usuário) para se conectar usando vs do que este método é bom, mas eu não daria sysadmin como seu acesso completo e apenas conta de administrador / contas agrícolas deve ter essa privilégia! Se você fizer do que seguir este guia!

http://technet.microsoft.com/en-us/library/ hh377944.aspx

editar

apenas para deixar claro! Você não pode conectar um projeto normal da sua máquina local para um servidor do SharePoint! Acho que eles removeram essa habilidade em 2013, também gostam de observar que atualmente existe apenas a opção de fazer aplicativos em 2012 remotamente que podem se conectar ao SharePoint para implantação!

Como notar para criar projetos como WebParts e assim por diante você precisa se desenvolver em uma VM hospedada no servidor ou localmente .... que vn tem vs2012 que você desenvolve diretamente e decepcionais diretamente! Quando você deseja executar o projeto no servidor ao vivo que é onde você usa o WSP e o PowerShell!

http://msdn.microsoft.com/pt -Us / biblioteca / jj163785 (v= office.15)

no public void onCreate(Bundle savedInstanceState)

           `tabHost = getTabHost();
            tabHost.setOnTabChangedListener(this);
    tabHost.setCurrentTab(0);
    setTabColor();`

do que no ouvinte:

public void OntabChanged (String TABID) {SettabColor ();

Finalmente, a função, que define o primeiro plano e o fundo também:

public void setTabColor() {
    // set foreground color:
    for (int i = 0; i < tabHost.getTabWidget().getChildCount(); i++) {
        RelativeLayout rl = (RelativeLayout) tabHost.getTabWidget().getChildAt(i);
        ImageView imageView = (ImageView) rl.getChildAt(0);// change it if you want it
        TextView textView = (TextView) rl.getChildAt(1);//          
        textView.setTextColor(Color.parseColor("#FFFFFF"));
    }

    // set background color:
    for (int i = 0; i < tabHost.getTabWidget().getChildCount(); i++) {
        tabHost.getTabWidget().getChildAt(i).setBackgroundColor(Color.parseColor("#010101")); // unselected
    }
    tabHost.getTabWidget().getChildAt(tabHost.getCurrentTab()).setBackgroundColor(Color.parseColor("#121288")); // selected
}

Em OnCreated ():

    tabHost.setCurrentTab(0);

// Set tabs text color to white:
TabWidget tabWidget = tabHost.getTabWidget();
int whiteColor = getResources().getColor(R.color.white);
int someOtherColor = getResources().getColor(R.color.someOtherColor);
for(int i = 0; i < tabWidget.getChildCount(); i++){
    View tabWidgetChild = tabWidget.getChildAt(i);
    if(tabWidgetChild instanceof TextView){
        ((TextView) tabWidgetChild).setTextColor(whiteColor);
    } else if(tabWidgetChild instanceof Button){
        ((Button) tabWidgetChild).setTextColor(whiteColor);
    } else if(tabWidgetChild instanceof ViewGroup){
        ViewGroup vg = (ViewGroup)tabWidgetChild;
        for(int y = 0; y < vg.getChildCount(); y++){
            View vgChild = vg.getChildAt(y);
            if(vgChild instanceof TextView){
                ((TextView) vgChild).setTextColor(whiteColor);
            }
        }
        vg.setBackgroundColor(someOtherColor);
    }
}
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top